Клиентская объектная модель (CSOM) для Project 2013

Клиентская объектная модель (CSOM) Project Server 2013 реализует распространенные функции сервера. CSOM Project Server включает в себя CSOM Microsoft .NET, CSOM Microsoft Silverlight, CSOM Windows Phone 8 и объектную модель JavaScript (JSOM). Кроме того, CSOM включает службу OData, которая включает интерфейс REST. Интерфейс REST предназначен главным образом для разработки приложений на отличных от Windows платформах (например, iOS и Android).

Примечание.

Решения для Project Online должны использовать CSOM. Однако локальные приложения могут использовать CSOM или интерфейс Project Server (PSI). Если CSOM включает функции, которые вы планируете использовать, рекомендуем использовать CSOM для новых приложений.

В расширениях CSOM объект ProjectContext обеспечивает точку входа для содержимого и функций сервера. CSOM .NET, CSOM Silverlight и CSOM Windows Phone используют объект Microsoft.ProjectServer.Client.ProjectContext, а JSOM использует объект PS.ProjectContext. Свойства ProjectContext предоставляют прямой доступ к базовым объектам Project Server в текущем семействе веб-сайтов Project Web App. Дополнительные сведения о расположении сборок CSOM и файла JavaScript см. в статье Microsoft.ProjectServer.Client.

Приложения и модель безопасности должны использовать CSOM для операций CRUD (создание, чтение, обновление, удаление) в Project Server 2013 и Project Online. Приложения Project не используют модель проверки подлинности только для приложений в SharePoint 2013. Приложение Project Server требует особой области запросов на получение разрешений, которая определяет, от чьего имени выполняются команды.

Запросы REST. Вы можете создавать запросы REST службы CSOM OData без использования метаданных. Некоторые сторонние средства позволяют использовать сборки .NET для CSOM, чтобы разрабатывать приложения для других устройств. Например, выполните поиск в Интернете по такой фразе: "средства для кроссплатформенной разработки на .NET для iOS или Android".

Примечание.

Хотя параметр $metadata для службы отчетов ProjectData допустим (https://ServerName/pwaName/_api/ProjectData/$metadata), параметр $metadata для службы ProjectServer CSOM удален в выпущенной версии Project Server 2013. Сведения о том, как найти объекты и элементы CSOM, доступные как конечные точки REST, см. в статье Библиотека JavaScript и справочные материалы по REST для Project Server 2013.

Чтобы просмотреть объекты, доступные в CSOM через интерфейс REST, вы можете использовать запрос https://ServerName/pwaName/_api/ProjectServer. Для запросов REST объект ProjectServer отражает свойства объекта ProjectContext в управляемой сборке Microsoft.ProjectServer.Client.dll и объекта PS.ProjectContext в JSOM. Например, можно использовать браузер для получения данных из CSOM о проектах в Project Web App, назначениях в указанном проекте и названий задач, касающихся определенного назначения для указанного ресурса, с помощью указанных ниже запросов (в каждом запросе используется один и тот же URL-префикс https://ServerName/pwaName/_api). GUID — это пример значения для Project.Id, EnterpriseResource.Id и Assignment.Id.

/ProjectServer/Projects
/ProjectServer/Projects('263fc8d7-427c-e111-92fc-00155d3ba208')/Assignments
/ProjectServer/EnterpriseResources('28eeb2b5-fe74-4efc-aa35-6a64514d1526')/Assignments('a2eafeb5-437c-e111-92fc-00155d3ba208')/Task?$select=Name

В отличие от интерфейса OData для службы ProjectData, доступного только для чтения отчетов, вы можете выполнять операции CRUD, используя запросы REST с помощью службы ProjectServer. Запросы REST для CSOM Project Server рассчитаны главным образом на платформы, отличные от классической версии Windows (например, на Windows RT, iOS и Android). Для классических и серверных платформ Windows (например, Windows 7, Windows 8 и Windows Server 2008 R2) можно использовать управляемые сборки CSOM. Для веб-приложений можно использовать PS.js для JavaScript. Информацию о выполнении операций CRUD с помощью запросов REST см. в статье Использование операций запроса OData в запросах REST в SharePoint (SDK для SharePoint 2013). Информацию об использовании службы ProjectData см. в статье Запрашивание каналов OData для данных отчетов.

В таблице 1 перечислены свойства ProjectContext, представляющие объекты Project Server. Вы можете использовать эти объекты для получения других объектов Project Server 2013 (например, назначений и задач).

Таблица 1. Свойства ProjectContext, предоставляющие доступ к объектам Project Server в CSOM и JSOM

CSOM (.NET, Silverlight и Windows Phone) JSOM
CustomFields
customFields
EnterpriseProjectTypes
enterpriseProjectTypes
EnterpriseResources
enterpriseResources
EntityTypes
entityTypes
EventHandlers
eventHandlers
Events
events
LookupTables
lookupTables
Phases
phases
Projects
projects
Stages
stages
WorkflowActivities
workflowActivities
WorkflowDesigner
workflowDesigner

В этом разделе

В статье Начало работы с CSOM Project Server и .NET есть общая информация о CSOM Project Server и .NET, инструкции по созданию простого расширения CSOM .NET в Visual Studio 2012 и примеры кода.

В статье Начало работы с объектной моделью JavaScript Project Server 2013 есть общая информация о JSOM Project Server, инструкции по созданию простого расширения JSOM в Visual Studio 2012 и примеры кода.

Узнать, как использовать CSOM, можно также в приведенных ниже статьях:

Примечание.

Кроме того, вы можете использовать Visual Studio 2010 для .NET Framework 4 для разработки с помощью CSOM.

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

Microsoft.ProjectServer.Client

Дополнительные ресурсы

Архитектура Project Server 2013Выбор правильного набора API в SharePoint 2013