Class ProjectServerManager

Class ProjectServerManager

名称: Aspose.Tasks 集合: Aspose.Tasks.dll (25.4.0)

提供在特定 Project Online 帐户中阅读和执行项目操作的方法的类,或在预先指定的 Project Server 示例中(2016 年和 2019 年 Project Server 版本已支持)。

public sealed class ProjectServerManager

Inheritance

object ProjectServerManager

继承人

object.GetType() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()

Constructors

ProjectServerManager(ProjectServerCredentials)

启动 Aspose.Tasks.ProjectServerManager 类的新例子。

public ProjectServerManager(ProjectServerCredentials credentials)

Parameters

credentials ProjectServerCredentials

用于连接到 Project Online 帐户的认证。

Examples

此示例显示如何创建 ProjectServerManager 示例,以便在预先访问 Project Server 示例。

string site = "http://project_server_instance.local/";
var windowsCredentials = new NetworkCredential("Administrator", "my_password", "DOMAIN");
var projectServerCredentials = new ProjectServerCredentials(site, windowsCredentials);
ProjectServerManager manager = new ProjectServerManager(projectServerCredentials);

此示例显示如何在 Project Online 服务中创建 ProjectServerManager 例子以访问帐户。

var credentials = new ProjectServerCredentials("https://xxxxxx.sharepoint.com", "yyyyy@xxxxxxx.onmicrosoft.com", "password");
ProjectServerManager manager = new ProjectServerManager(projectServerCredentials);

Methods

CreateNewProject(Project)

在 Project Server\Project Online 示例中创建新项目,使用默认保存选项。

public void CreateNewProject(Project project)

Parameters

project Project

将项目保存到 Project Server\Project Online 示例。

Examples

在此示例中,项目从 .mpp 文件上传并存储到 Project Online 帐户。

var credentials = new ProjectServerCredentials("https://xxxxxx.sharepoint.com", "yyyyy@xxxxxxx.onmicrosoft.com", "password");
var project = new Project(@"sample.mpp");
ProjectServerManager manager = new ProjectServerManager(credentials);
manager.CreateNewProject(project);

Exceptions

ProjectOnlineException

如果是由服务器返回的通信错误或错误。

CreateNewProject(项目,ProjectServerSaveOptions)

在 Project Server\Project Online 示例中创建新项目,使用所指定的保存选项。

public void CreateNewProject(Project project, ProjectServerSaveOptions saveOptions)

Parameters

project Project

将项目保存到 Project Server\Project Online 示例。

saveOptions ProjectServerSaveOptions

Aspose.Tasks.ProjectServerSaveOptions 类。

Examples

在此示例中,项目从 .mpp 文件上传并存储到 Project Online 帐户。

var credentials = new ProjectServerCredentials("https://xxxxxx.sharepoint.com", "yyyyy@xxxxxxx.onmicrosoft.com", "password");
var project = new Project(@"sample.mpp");
ProjectServerManager manager = new ProjectServerManager(credentials);
manager.CreateNewProject(project, new ProjectServerSaveOptions
{
    ProjectName = "My new project"
});

Exceptions

ProjectOnlineException

如果是由服务器返回的通信错误或错误。

GetProject(Guid)

通过指定指南从 Project Online 帐户 \ Project Server 示例获取项目。

public Project GetProject(Guid projectGuid)

Parameters

projectGuid Guid

阅读项目的指南。

Returns

Project

例子是 Aspose.Tasks.Project 类,代表项目从 Project Online \ Project Server 阅读。

GetProjectList()

从当前 Project Online 帐户 \ Project Server 示例的“工作”商店获取项目列表。

public IEnumerable<projectinfo> GetProjectList()

Returns

IEnumerable < ProjectInfo >

在当前 Project Online 帐户中的项目列表 \ Project Server 例子。

GetProjectRawData(Guid)

获取项目的二进制数据用于解决问题。

public Stream GetProjectRawData(Guid projectGuid)

Parameters

projectGuid Guid

阅读项目的指南。

Returns

Stream

流量包含原始项目的数据。

Examples

In this example the debug info for the specific project is retrieved. You can pass the resulting "debug.zip" to the support team for troubleshooting purposes.
[C#]
var credentials = new ProjectServerCredentials("https://xxxxxx.sharepoint.com", "yyyyy@xxxxxxx.onmicrosoft.com", "password");
// Guid of project you are trying to get.
var projectGuid = new Guid("e0294bfb-5657-45c8-9cc5-82169fb95d69");
ProjectServerManager manager = new ProjectServerManager(credentials);
using (var fileStream = File.OpenWrite(@"c:\debug.zip"))
{
    using (var stream = manager.GetProjectRawData(projectGuid))
    {
        stream.CopyTo(fileStream);
    }
}

UpdateProject(Project)

在 Project Server\Project Online 示例中使用默认保存选项更新现有项目。

public void UpdateProject(Project project)

Parameters

project Project

将项目保存到 Project Server\Project Online 示例。

Examples

在此示例中,项目从 Project Online 帐户上传,修改并恢复到 Project Online 帐户。

var credentials = new ProjectServerCredentials("https://xxxxxx.sharepoint.com", "yyyyy@xxxxxxx.onmicrosoft.com", "password");
ProjectServerManager manager = new ProjectServerManager(credentials);
var projectList = manager.GetProjectList();
var projectGuid = projectList.First().Id;
var project = manager.GetProject(projectGuid);
var task = project.RootTask.Children.Add("New task");
manager.UpdateProject(project);

Remarks

项目的“project.Get(Prj.Guid)”属性应该是 Project Server 帐户 \ Project Online 例中存在的项目的有效指南。

Exceptions

ProjectOnlineException

如果是由服务器返回的通信错误或错误。

UpdateProject(项目,ProjectServerSaveOptions)

在 Project Server\Project Online 示例中更新现有项目,使用所指定的存储选项。

public void UpdateProject(Project project, ProjectServerSaveOptions saveOptions)

Parameters

project Project

将项目保存到 Project Server\Project Online 示例。

saveOptions ProjectServerSaveOptions

Aspose.Tasks.ProjectServerSaveOptions 类。

Examples

在此示例中,项目从 Project Online 帐户上传,修改并恢复到 Project Online 帐户。

var credentials = new ProjectServerCredentials("https://xxxxxx.sharepoint.com", "yyyyy@xxxxxxx.onmicrosoft.com", "password");
ProjectServerManager manager = new ProjectServerManager(credentials);
var projectList = manager.GetProjectList();
var projectGuid = projectList.First().Id;
var project = manager.GetProject(projectGuid);
var task = project.RootTask.Children.Add("New task");
manager.UpdateProject(project, new ProjectServerSaveOptions
{
    ProjectGuid = projectGuid
});

Remarks

saveOptions.ProjectGuid 应设置在 Project Server\ Project Online 示例中存在的项目指南。

Exceptions

ProjectOnlineException

如果是由服务器返回的通信错误或错误。

ExecutingWebRequest

当 Web 请求发送到 Project Server 的 Web API 时,会出现的事件。

public event EventHandler<webrequesteventargs> ExecutingWebRequest

事件类型

EventHandler < WebRequestEventArgs >

 中文