Делая SharePoint доступнее...

четверг, 28 февраля 2013 г.

Новые возможности Business Connectivity Services в SharePoint 2013 – Изолированные Внешние Типы Контента внутри приложений

Одной из новых возможностей компонента Business Connectivity Services (службы Подключения к Бизнес-Данным), доступных в SharePoint 2013,  является создание Внешних Типов Контента уровня приложений.  Другими словами область видимости BDC модели может быть ограничена приложением и это избавляет от необходимости разворачивать внешний тип контента на уровне фермы и соответственно вовлекать в этот процесс администратора для доступа к службе подключения к бизнес-данным. Внешние типы контента уровня фермы превосходно справлялись со своими функциями для SharePoint решений уровня фермы, но такой подход абсолютно неприменим для приложений в SharePoint 2013 из-за их изолированности. Таким образом другая причина по которым в SharePoint 2013 били введены внешние типы контента уровня приложений – это предоставить возможность доступа ко внешним источникам данным из автономных приложений. В приложениях SharePoint 2013 BDC модель хранится в библиотеке документов, а не в хранилище метаданных службы подключения к бизнес-данным. Когда приложение запускается SharePoint использует FileBackedMetdataCatalog для того чтобы загрузить модель в среде подключения к бизнес-данным. Затем к этой модели имеют доступ внешние списки, которые находятся внутри приложения. Данная среда подключения к бизнес-данным может работать с внешними типами контента, которые основаны на MS SQL, WCF/Web/OData сервисах. Custom connector (настраиваемый коннектор ) и .net assembly connector (коннектор .net сборки) не поддерживаются данной средой подключения к бизнес-данным и следовательно недоступны в приложениях.

Описание примера, как создать, внешний тип контента внутри приложения можно посмотреть вот здесь Новые возможности Business Connectivity Services в SharePoint 2013 – Создание внешнего типа контента на основе источника OData. После создания приложения откройте файл Element.xml, в котором декларировано создание экземпляра внешнего списка,  и в нем вы сможете увидеть свойство MetadataCatalogFileName, через которое задается имя файла BDC модели, содержащей в себе описание внешнего типа контента.

Свойство MetadataCatalogFileName

Путь к файлу BDC модели в  WSP пакете содержится уже в другом файле  Element.xml. Одно важное замечание – одно SharePoint приложение может содержать только одну BDC модель.

Путь к файлу BDC модели

Если мы установим наше приложение, то созданную в нем BDC модель нельзя будет использовать во внешних списках уровня фермы. К примеру, если попытаться создать такой список, то возможности для выбора этой модели у нас не будет.

Внешние типы контента уровня фермы отсутствуют

Так же если зайти в службу подключения к бизнес-данным в центре администрирования, то и там мы увидим, что развернутая нами BDC модель уровня приложения не отображается.

BDC модель в центре администрирования не отображается

Что же нам делать, если мы хотим созданную модель использовать, к примеру, во внешних списках уровня фермы. Это желание достаточно естественное, так как в настоящее время в SharePoint дизайнере нет поддержки источников OData для внешних типов контента и, так же, в Visual Studio нет инструментария для создания BDC моделей уровня фермы. Поэтому и встает вопрос, как созданную BDC модель уровня приложения для источника OData  превратить в BDC модель уровня фермы. Ответ – очень просто. Для этого для начала правой кнопкой мыши кликните на ваш проект и затем выберете пункт “Publish”.

Опубликовать SharePoint приложение

Найдите сгенерированную BDC модель, которая будет находится в папке pkg. В моем случае файл BDCMetadata.bdcm находится тут “ODataECTDemo\ODataECTDemo\pkg\Debug\ODataECTDemo\ODataECTDemo_Feature1\External Content Types”. Зайдите в центр администрирования, откройте   службу подключения к бизнес-данным  и импортируйте этот файл как есть (в нем не нужно делать какие-либо изменения).

Импортируйте BDC модель в центре администрирования

“Вуаля!” – после этого внешний тип контента можно будет использовать в списках уровня фермы.

Внешний тип контента теперь доступен на уровне фермы

Например, можно создать внешний список, в котором будут отражены данные из внешнего источника OData.

Внешний список отображающий данные из источника OData

Поделиться
  • Опубликовать в Facebook
  • Опубликовать в Twitter
  • Share to Google+
  • Написать об этом в блоге
  • Отправить по e-mail
  • More...

0 коммент.

:) :-) :)) =)) :( :-( :(( :d :-d @-) :p :o :>) (o) [-( :-? (p) :-s (m) 8-) :-t :-b b-( :-# =p~ :-$ (b) (f) x-) (k) (h) (c) cheer

 
© 2012 Блог Дмитрия Калошина
Designed by BlogThietKe Cooperated with Duy Pham
Released under Creative Commons 3.0 CC BY-NC 3.0
Posts RSSComments RSS
Back to top