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


Начало работы с помощью клиентской объектной модели с внешними данными в SharePoint

Сведения об использовании клиентской объектной модели SharePoint для работы со службами Business Connectivity Services (BCS) в SharePoint.

Что такое клиентская объектная модель SharePoint?

Клиентская объектная модель для SharePoint — это набор клиентских библиотек, представляющих серверную объектную модель. Они собраны в трех разных библиотек DLL с использованием различных типов разработки. Клиентская объектная модель содержит большую часть основных функций сервера API. Позволяет получить доступ к одной типам функциональные возможности из браузера сценариев и также веб-приложениями .NET и Silverlight приложений.
Чтобы улучшить и расширить возможности по работе с внешними данными, Службы Business Connectivity Services (BCS) расширил клиентской объектной модели, чтобы включить дополнительные функции.

НастройкаПриступая к работеПодробнее

Начало работы с клиентской объектной моделью SharePoint с внешними данными

Разработка решений с помощью объектной модели клиента SharePoint (CSOM), необходимо следующее:

  • SharePoint

  • Visual Studio 2012

  • Инструменты разработчика Office для Visual Studio 2012

Сведения о настройке среды разработки см. в статье Настройка среды разработки для BCS в SharePoint.

Для доступа к возможности, предоставляемые в клиентской объектной модели, требуется только для добавления ссылки на файлы Microsoft.SharePoint.Client.Runtime.dll и Microsoft.SharePoint.Client.dll в их проектах. Можно также использовать клиентской объектной модели, ссылки на следующие библиотеки DLL в глобальный кэш сборок:

  • \\Program Files\\Common Files\\Microsoft Shared\\Web Server Extensions\\15\\isapi\\Microsoft.SharePoint.Client.Runtime.dll

  • \\Program Files\\Common Files\\Microsoft Shared\\Web Server Extensions\\15\\isapi\\Microsoft.SharePoint.Client.dll

Основные компоненты клиентской объектной модели SharePoint

Следующие статьи помогут вам узнать больше о клиентской объектной модели в SharePoint.

Таблица 1. Основные понятия для понимания клиентской объектной модели

Статья Описание
Внешние типы контента в SharePoint
Прочитав эту статью, вы узнаете, что можно делать с внешними типами контента и что необходимо для их создания в SharePoint.
Использование источников OData со службами Business Connectivity Services в SharePoint
Содержит сведения, помогающие приступить к созданию внешних типов контента на основе источников OData и использованию данных в компонентах SharePoint или Office 2013.
Выбор правильного набора API в SharePoint
Узнайте о нескольких наборах API, предоставляемых в SharePoint, включая серверную объектную модель, различные клиентские объектные модели и веб-службу REST/OData.
Справка по API клиента .NET для SharePoint
Сведения о библиотеках клиентских классов .NET в SharePoint.
Справка по API JavaScript для SharePoint
Найдите сведения о библиотеках объектов JavaScript в SharePoint.

Что можно делать с помощью клиентской объектной модели

Клиентская объектная модель SharePoint позволяет получать, обновлять и управлять данными, содержащимися в SharePoint. SharePoint предоставляет клиенту библиотек в различные форматы для учета большинства разработчиков. Клиентская библиотека для разработчиков веб-приложений, использующих языками сценариев, предлагаемое в JavaScript. Для разработчиков .NET предлагается как клиент .NET управляемой библиотеки DLL. Для разработчиков приложений SilverlightSilverlight DLL-Библиотека обеспечивает клиентской библиотеки.

Дополнительные сведения о том, что можно делать с клиентской объектной моделью в SharePoint, см. в статьях в таблице 2.

Табл. 2. Основные задачи для использования клиентской объектной модели с внешними данными

Задача Описание
Выполнение базовых операций с использованием кода библиотеки клиента в SharePoint
Узнайте, как писать код для выполнения основных операций с клиентской объектной моделью SharePoint.
Как: используйте клиентская библиотека кода для доступа к внешним данным в SharePoint
Узнайте, как использовать клиентную объектную модель SharePoint для работы с объектами SharePoint BCS с помощью браузерных сценариев.

Ниже приведены некоторые основные примеры задач, которые можно выполнить с помощью CSOM.

Получение определенной сущности

В этом примере показано, как получить контекст из SharePoint, а затем извлеките объект источника данных.


ClientContext ctx = new ClientContext("http://sharepointservername"); 
Web web = ctx.Web; 
ctx.Load(web); 
Entity entity = ctx.Web.GetEntity("http://sharepointservername", "EntityName"); 
ctx.Load(entity); 
ctx.ExecuteQuery(); 

Создание универсальных вызова

В этом примере показано, как создавать универсальные вызова таким образом, можно создать объект сущности для работы в коде.

LobSystem lobSystem = entity.GetLobSystem();
ctx.Load(lobSystem);

LobSystemInstanceCollection lobInstances = lobSystem.GetLobSystemInstances();
ctx.Load(lobInstances);
ctx.ExecuteQuery();

LobSystemInstance lsi;
foreach(LobSystemInstance lobInstance in lobInstances)
{
  if (lobInstance.Name.CompareTo("MyLOBSystemInstance") == 0)
  {
    lsi = lobInstance;
  }
}

if (null != lsi)
{
  entity.Execute("MethodInstanceName", lsi, Array.Empty<object>()); 
  ctx.Load(myObj); 
  ctx.ExecuteQuery();
}

Получение наборов выгружаемый результатов

Следующем примере показано, как получить отфильтрованные выгружаемый набор данных. В этом случае значение страницы равно 50.


// Find filters for given Method Name. 
FilterCollection fCollection = entity.GetFilters("methodName"); 
ctx.Load(fCollection); 
ctx.ExecuteQuery(); 

fCollection.SetFilterValue("X.Y.Z.Country", 0, "India")
// Assuming that the "RowLimit" filter has the Limit filter type
fCollection.SetFilterValue("RowLimit", 0, 50)

EntityInstanceCollection eCollection = entity.FindFiltered(fCollection, 
"nameOfFinder", lsi); 
ctx.ExecuteQuery(); 

Запрос отфильтрованные сведения

Приведенный ниже показано, как для возврата набора отфильтрованных результатов. В этом случае отфильтровано столбец данных — это поле X.Y.Z.Country. Код ищет все действия со значением «Индия» и помещает, в коллекцию.


// Find filters for given Method Name. 
FilterCollection fCollection = entity.GetFilters("methodName"); 
ctx.Load(fCollection); 
ctx.ExecuteQuery(); 

fCollection.SetFilterValue("X.Y.Z.Country", 0, "India")

EntityInstanceCollection eCollection = entity.FindFiltered(fCollection, 
"nameOfFinder", lsi); 
ctx.ExecuteQuery(); 

От простого к сложному: Дополнительные сведения о клиентской объектной модели

Дополнительные сведения об использовании клиентской объектной модели в SharePoint см. в таблице 3.

Табл. 3. Дополнительные понятия для клиентской объектной модели

Статья Описание
Справочник по клиентской объектной модели BCS для SharePoint
Суммирует объекты, доступные для создания клиентских скриптов с помощью клиентской объектной модели SharePoint для доступа к внешним данным, предоставляемым BCS.

См. также