Project.ReadSchedulingContext 方法
获取基于一套项目和资源的调度上下文。
命名空间: WebSvcProject
程序集: ProjectServerServices(位于 ProjectServerServices.dll 中)
语法
声明
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/Project/ReadSchedulingContext", RequestNamespace := "https://schemas.microsoft.com/office/project/server/webservices/Project/", _
ResponseNamespace := "https://schemas.microsoft.com/office/project/server/webservices/Project/", _
Use := SoapBindingUse.Literal, ParameterStyle := SoapParameterStyle.Wrapped)> _
Public Function ReadSchedulingContext ( _
projectUids As Guid(), _
resourceUids As Guid() _
) As ProjectContextDataSet
用法
Dim instance As Project
Dim projectUids As Guid()
Dim resourceUids As Guid()
Dim returnValue As ProjectContextDataSet
returnValue = instance.ReadSchedulingContext(projectUids, _
resourceUids)
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/Project/ReadSchedulingContext", RequestNamespace = "https://schemas.microsoft.com/office/project/server/webservices/Project/",
ResponseNamespace = "https://schemas.microsoft.com/office/project/server/webservices/Project/",
Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public ProjectContextDataSet ReadSchedulingContext(
Guid[] projectUids,
Guid[] resourceUids
)
参数
projectUids
类型:[]项目的 Guid 的数组。
resourceUids
类型:[]资源 Guid 的数组。
返回值
类型:WebSvcProject.ProjectContextDataSet
包含派生自指定的项目和资源的调度上下文。
备注
获取与指定的项目或资源相关的项目的列表。如果满足以下条件之一,存在关系:
项目共享企业资源 (或者那些在项目团队或在输入列表中)。
项目有 interproject 依赖项 (跨项目链接)。
共享资源的项目或有跨项目链接的 (一种间接关系) 的输入列表中的项目与相关的项目。
Project Server 权限
权限 |
说明 |
---|---|
允许用户打开指定的项目。类别的权限。 |
示例
考虑两个共享如以下表中所示的一个企业资源的项目。
项目名称和 GUID |
资源和 Guid |
---|---|
Project1 f0e98e26-2c9c-4f74-b40a-640f3f3f03f5 |
Resource1d58fd816-d380-46e3-aff1-6cef617d32a2 Resource2b3dab395-bc33-4dd7-a3a7-a45522857369 |
Project2 a9d03b87-37f1-473d-90f6-77ba3c521a40 |
Resource1d58fd816-d380-46e3-aff1-6cef617d32a2 |
在以下代码段为测试应用程序WebSvcProject对项目的 web 服务的引用的任意名称并且project是WebSvcProject.Project类的初始化的实例。
try
{
Guid[] projectUids = { new Guid("a9d03b87-37f1-473d-90f6-77ba3c521a40") };
Guid[] resourceUids = null;
WebSvcProject.ProjectContextDataSet dsProjectContext =
project.ReadSchedulingContext(projectUids, resourceUids);
dsProjectContext.WriteXml(@"C:\Tests\SchedulingContextOut.txt");
}
catch (SoapException ex)
{
. . .
}
在 SchedulingContextOut.txt 文件中的Relationship元素的值显示 Project2 与项目 1 相关的共享资源。如果您添加到resourceUids的数组的一个或两个资源 Guid,结果是相同的。
备注
如果两个项目的 Guid 到projectUids数组中添加, dsProjectContext是空的。
<?xml version="1.0" standalone="yes"?>
<ProjectContextDataSet xmlns="https://schemas.microsoft.com/office/project/server/webservices/ProjectContextDataSet/">
<Relationships>
<PROJ_UID>a9d03b87-37f1-473d-90f6-77ba3c521a40</PROJ_UID>
<RelatedTo_UID>f0e98e26-2c9c-4f74-b40a-640f3f3f03f5</RelatedTo_UID>
<RelatedTo_NAME>Project1</RelatedTo_NAME>
<Relationship>2</Relationship>
<HasBuildTeamPermission>true</HasBuildTeamPermission>
</Relationships>
</ProjectContextDataSet>