1

Project API 允许您使用

ProjectDataSet data = client.ReadProjectList();
foreach (ProjectDataSet.ProjectRow projectRow in data.Project){...}

此 API 调用是有缺陷的,因为它从工作存储返回所有项目,而不是已发布存储。您似乎希望根据已发布的商店检查每个项目的 GUID,这非常慢。

int i = projectRow.PROJ_TYPE;
if (i == 0){
    ProjectDataSet publishedProjectDataSet = client.ReadProject(projectRow.PROJ_UID, DataStoreEnum.PublishedStore);
    if (publishedProjectDataSet == null) { continue; }
}

有谁知道如何快速仅列出已发布的项目?

4

1 回答 1

2

projectClient.ReadProjectStatus应该管用 。例如

 // Get list of all projects.
 SvcProject.ProjectDataSet projectDs = projectClient.ReadProjectStatus(
 Guid.Empty, SvcProject.DataStoreEnum.PublishedStore,
 string.Empty, (int)PSLibrary.Project.ProjectType.Project);

文档位于此处

于 2014-03-27T00:59:37.423 回答