Поделиться через


Класс 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() .

Project Server создается объект виртуального PublishedProject для каждого проекта черновиков, который еще не опубликован. Виртуальный опубликованного проекта гарантирует, что черновик проекта можно получить через объект ProjectCollection ли он был опубликован или нет. Извлеченных проектов возвращает свойства из черновиков таблиц в базе данных Project.

К примеру при создании черновик проекта с помощью PSI (en) и затем прочитайте все проекты со CSOM, объект ProjectCollection содержит неопубликованными черновик проекта. Определить, можно ли проект был опубликован по значению свойства PublishedProject.LastPublishedDate , который наследуется от Project.LastPublishedDate. Для отмены публикации проекта, значение свойства LastPublishedDate : DateTime.Min (1/1/0001). В следующем фрагменте кода 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());

Потокобезопасность

Любые общедоступные элементы static (Shared в Visual Basic) этого типа являются потокобезопасными. Не гарантируется, что любые элементы экземпляров потокобезопасны.

См. также

Справочные материалы

Элементы ProjectCollection

Пространство имен Microsoft.ProjectServer.Client

Project

ProjectCreationInformation

DraftProject

PublishedProject

Projects