若要创建基于自定义连接器程序集的 SharePoint Server 2010 外部内容类型,需要使用 Microsoft SharePoint Designer 2010。
上次修改时间: 2010年10月8日
适用范围: SharePoint Server 2010
为此,您将自定义连接器程序集部署到 BDC 元数据存储,然后使用 SharePoint Designer 2010 中的外部内容类型设计器创建一个连接到自定义连接器程序集的外部内容类型。
将自定义连接器程序集部署到 BDC 元数据存储
自定义连接器程序集必须存在于 BDC 元数据存储的 LobSystem 对象中。若要将该程序集添加到 BDC 元数据存储中,请通过将以下标记复制到一个文本文件创建空白 BDC 模型文件,然后将该文本文件保存为 XML 文件。
<?xml version="1.0"?> <Model xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Name="ScaterMultipleFields" xmlns="https://schemas.microsoft.com/windows/2007/BusinessDataCatalog"> <LobSystems> <LobSystem Name="TestSystem" Type="DotNetAssembly"> <Properties> <Property Name="SystemUtilityTypeName" Type="System.String"> [Proxy class Type] </Property> <Property Name="InputUriProcessor" Type="System.String"> [Type of class implementing ILobUri] </Property> <Property Name="OutputUriProcessor" Type="System.String"> [Type of class implementing INamingContainer] </Property> </Properties> <LobSystemInstances> <LobSystemInstance Name="TestInstance"> <Properties> < Property Name="AuthenticationMode" Type="Microsoft.SharePoint.BusinessData.SystemSpecific.Db.DbAuthenticationMode"> PassThrough </Property> </Properties> </LobSystemInstance> </LobSystemInstances> </LobSystem> </LobSystems> </Model>
按照 Microsoft TechNet 上管理 BDC 模型的"导入 BDC 模型"一节中所述的步骤导入模型。
在应用程序服务器上打开 SharePoint Management Shell。有关使用此工具的信息,请参阅使用 SharePoint 2010 Management Shell 管理服务应用程序。
若要从管理元数据目录中获取 LobSystem,请执行以下命令。
C:\PS>$site="http://YourSiteName" C:\PS>$LobSystemName = "TestSystem" C:\PS>$lobsys = Get-SPBusinessDataCatalogMetadataObject –BdcObjectType LobSystem –ServiceContext $site -Name $LobSystemName
若要导入程序集,请执行以下 SPBusinessDataCatalogDotNetAssemblyWindows PowerShell cmdlet。
C:\PS>Import-SPBusinessDataCatalogDotNetAssembly -Path [Path to dll] -LobSystem $lobsys
使用 SharePoint Designer 2010 为自定义连接器创建外部内容类型
打开 SharePoint Designer 2010,并按照如何:基于 Web 服务创建外部内容类型中描述的步骤创建外部内容类型。除"添加与外部系统的连接"之外,步骤完全相同。
若要添加与 .NET Framework 程序集的连接,请执行以下步骤:
选择"单击此处发现外部数据源并定义操作"。
在"添加连接"对话框中,单击".NET 类型"。
在".NET 类型选择"对话框中,单击"浏览"按钮以指定 BDC 元数据存储中包含对要连接到的 .NET 程序集的引用的外部系统。选择该系统,然后单击"确定"。
此时应能看到程序集中定义的所有公共 .NET 类型及其包含的方法。
选择包含所有外部系统方法的代理类的类型。像定义 Web 服务一样定义操作,如如何:基于 Web 服务创建外部内容类型中所述。
单击"保存"以将这些更改保存到 BDC 元数据存储中。
转到"外部内容类型"视图,然后选择您创建的外部内容类型。
在服务器功能区中单击"导出 BDC 模型",然后保存模型文件。
在 XML 编辑器中打开在上一步保存的模型文件,并进行以下更改:
删除 Proxy 元素。
将 LobSystem 元素的 Type 属性值从 DotNetAssembly 更改为 Custom。
向该模型文件添加您希望使用的任何其他属性。
保存该模型文件。
现在,您即可将该模型文件用于自定义连接器。