Share via


ProjectCollection 类

表示PublishedProject对象的集合。

继承层次结构

System.Object
  Microsoft.SharePoint.Client.ClientObject
    Microsoft.SharePoint.Client.ClientObjectCollection
      Microsoft.SharePoint.Client.ClientObjectCollection<PublishedProject>
        Microsoft.ProjectServer.Client.ProjectCollection

命名空间:  Microsoft.ProjectServer.Client
程序集:  Microsoft.ProjectServer.Client(位于 Microsoft.ProjectServer.Client.dll 中)

语法

声明
<ScriptTypeAttribute("PS.ProjectCollection", ServerTypeId := "{8d842010-5471-4748-ab8a-ed6df0494f3d}")> _
Public Class ProjectCollection _
    Inherits ClientObjectCollection(Of PublishedProject)
用法
Dim instance As ProjectCollection
[ScriptTypeAttribute("PS.ProjectCollection", ServerTypeId = "{8d842010-5471-4748-ab8a-ed6df0494f3d}")]
public class ProjectCollection : ClientObjectCollection<PublishedProject>

备注

签出以进行编辑,已发布的项目,请使用 PublishedProjectCheckOut() 方法。

项目服务器创建虚拟的PublishedProject对象尚未发布每个草稿项目。虚拟已发布的项目确保草稿项目可通过ProjectCollection对象,是否发布或不。检索到的项目从项目数据库中的草稿表中获取属性。

例如,如果您用 PSI,创建草稿项目,然后阅读 CSOM 的所有项目, ProjectCollection对象将包含未发布的草稿项目。您可以决定一个项目是否已发布的PublishedProject.LastPublishedDate属性,它从Project.LastPublishedDate的值。对于未发布的项目中, LastPublishedDate属性值是DateTime.Min (0001 年 1 月 1 日)。下面的 CSOM 代码片段创建的草稿项目但不是保持不变或将其发布。

ProjectContext projContext = new ProjectContext("https://ServerName/pwa");
ProjectCreationInformation newProj = new ProjectCreationInformation();

newProj.Id = Guid.NewGuid();
newProj.Name = "Test project not published";
newProj.Start = DateTime.Today.Date;

PublishedProject newPublishedProj = projContext.Projects.Add(newProj);

projContext.Load(newPublishedProj);
projContext.ExecuteQuery();

DateTime pubDate = newPublishedProj.LastPublishedDate;
Console.Write("\n\tLastPublishedDate before publishing: {0}", pubDate.ToString());

线程安全性

该类型的任何公共 静态 (已共享 在 Visual Basic 中) 成员都是线程安全的。不保证任何实例成员都是线程安全的。

另请参阅

引用

ProjectCollection 成员

Microsoft.ProjectServer.Client 命名空间

Project

ProjectCreationInformation

DraftProject

PublishedProject

Projects