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


Класс PublishedProject

Представляет проект, который был опубликован на сервере Project Server.

Иерархия наследования

System.Object
  Microsoft.SharePoint.Client.ClientObject
    Microsoft.ProjectServer.Client.Project
      Microsoft.ProjectServer.Client.PublishedProject

Пространство имен:  Microsoft.ProjectServer.Client
Сборка:  Microsoft.ProjectServer.Client (в Microsoft.ProjectServer.Client.dll)

Синтаксис

'Декларация
<ScriptTypeAttribute("PS.PublishedProject", ServerTypeId := "{94083bd1-9d58-40b3-becf-c4703547d63c}")> _
Public Class PublishedProject _
    Inherits Project
'Применение
Dim instance As PublishedProject
[ScriptTypeAttribute("PS.PublishedProject", ServerTypeId = "{94083bd1-9d58-40b3-becf-c4703547d63c}")]
public class PublishedProject : Project

Замечания

Чтобы извлечь проект для редактирования, используйте метод 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) этого типа являются потокобезопасными. Не гарантируется, что любые элементы экземпляров потокобезопасны.

См. также

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

Элементы PublishedProject

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