Публикация сборки подключения .NET к хранилищу метаданных BDC
Дата последнего изменения: 7 июля 2010 г.
Применимо к: SharePoint Server 2010
Чтобы импортировать сборку подключения .NET в хранилище метаданных BDC, выполните следующие действия.
Импортируйте пустую модель подключения к бизнес-данным. Сборка .NET должна существовать в объекте LobSystem в хранилище метаданных BDC. Поэтому перед импортом сборки необходимо создать пустую модель подключения к бизнес-данным и импортировать ее в BDC с помощью центра администрирования SharePoint.
Указанное имя объекта LobSystem будет отображаться пользователям в Microsoft SharePoint Designer 2010 при попытке создания внешних типов контента.
Скопируйте следующую модель в текстовый файл и сохраните его в формате XML (например, c:\InitialModel.xml).
<?xml version="1.0" encoding="utf-8" standalone="yes"?> <Model xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://schemas.microsoft.com/windows/2007/BusinessDataCatalog BDCMetadata.xsd" xmlns="https://schemas.microsoft.com/windows/2007/BusinessDataCatalog" Name="DotNetAssembly_Model"> <LobSystems> <LobSystem Name="ExchangeSample" Type="DotNetAssembly"> <LobSystemInstances> <LobSystemInstance Name="MyLSI"> </LobSystemInstance> </LobSystemInstances> </LobSystem> </LobSystems> </Model>
Импортируйте модель, следуя инструкциям в статье Управление моделями подключения к бизнес-данным.
После помещения модели в хранилище метаданных подключения к бизнес-данным выполните команду Import-SPBusinessDataCatalogDotNetAssemblyWindows PowerShell, чтобы импортировать основную сборку .NET и зависимые от нее сборки.
Откройте SharePoint. Сначала выполните команды для получения объекта LobSystem из каталога администрирования метаданных. После этого выполните командлет SPBusinessDataCatalogDotNetAssembly, как показано в следующем примере:
C:\PS>$site = new-object "Microsoft.SharePoint.SPSite" "http://<yourSiteName>"
C:\PS>$serviceContext = [Microsoft.SharePoint.SPServiceContext]::GetContext($site)
C:\PS>$bdcService = new-object "Microsoft.SharePoint.BusinessData.SharedService.BdcService"
C:\PS>$catalog = $bdcService.GetAdministrationMetadataCatalog($serviceContext)
C:\PS>$lobsystem = $catalog.GetLobSystem("ExchangeSample")
C:\PS> Import–SPBusinessDataCatalogDotNetAssembly –LobSystem $lobsystem –Path "c:\ExchangeIntegrationAssembly.dll"Команда Import-SPBusinessDataCatalogDotNetAssembly имеет следующий синтаксис:
Import-SPBusinessDataCatalogDotNetAssembly –LobSystem $lobsystem –path <string> -DependentAssemblyPaths <string list>
Ниже приведен пример использования различных сборок.
C:\PS> Import–SPBusinessDataCatalogDotNetAssembly –LobSystem $lobsystem –Path "c:\Folder\Assembly.dll" –DependentAssemblyPaths "c:\Folder\Assembly2.dll","c:\Folder\Assembly3.dll"
Примечание
Типы, на которые ссылается модель BDC, должны быть определены в основной сборке. В зависимых сборках обычно используются вспомогательные методы или функции.
Перезапустите службы IIS (при необходимости). В случае изменения сборки после импорта необходимо перезапустить службы IIS после выполнения команды Import–SPBusinessDataCatalogDotNetAssembly. При выполнении импорта модели в первый раз это не требуется.