代码段:获取服务器或客户端上的 FileBackedMetadataCatalog

上次修改时间: 2010年5月5日

适用范围: SharePoint Server 2010

本文内容
说明
必备组件
使用该示例

说明

下面的代码示例演示如何使用服务器上的 Business Data Connectivity (BDC) Service 运行时对象模型来获取服务器上的 FileBackedMetadataCatalog。请注意,FileBackedMetadataCatalog 也可用于客户端。

必备组件

  • 服务器上安装了 Microsoft SharePoint Server 2010 或 Microsoft SharePoint Foundation 2010。

  • 客户端计算机上安装了 Microsoft .NET Framework 3.5 和 Microsoft Visual Studio。

  • BDC 元数据存储中至少注册了一个外部内容类型。

使用该示例

  1. 启动 Visual Studio,然后创建一个新的 C# 控制台应用程序项目。在创建项目时,选择".NET Framework 3.5"。

  2. 从"视图"菜单中,选择"属性页"以显示项目属性。

  3. 在"生成"选项卡上,为"目标平台"选择"任何 CPU"。

  4. 关闭项目属性窗口。

  5. 在"解决方案资源管理器"中的"引用"下,移除除 SystemSystem.Core 以外的所有项目引用。

  6. 将以下引用添加到项目中:

    1. Microsoft.BusinessData(位于 SharePoint_RootFolder\ISAPI 中)

    2. Microsoft.SharePoint

  7. 用此过程末尾列出的代码替换 Program.cs 中自动生成的代码。

  8. 使用有效值替换 entityFilePath。

  9. 保存该项目。

  10. 编译并运行该项目。

using Microsoft.BusinessData.MetadataModel;
using Microsoft.BusinessData.Runtime;
using Microsoft.SharePoint.BusinessData.MetadataModel;
using Microsoft.SharePoint;
using Microsoft.SharePoint.BusinessData.SharedService;
using BDCParser = Microsoft.SharePoint.BusinessData.Parser;

// If using on the client, use these instead of the server DLLs.
//using BDCParser = Microsoft.Office.BusinessData.Parser;
//using Microsoft.Office.BusinessData.MetadataModel;

//entityFilePath is the path where the BDC model is stored on a local computer.
XmlReader reader = XmlReader.Create(entityFilePath); 
BDCParser.ParseContext parseContext = new BDCParser.ParseContext();
FileBackedMetadataCatalog catalog = new FileBackedMetadataCatalog();
catalog.ImportPackage(
                reader,
                parseContext,
                BDCParser.PackageContents.Model
                     | BDCParser.PackageContents.Properties
                     | BDCParser.PackageContents.LocalizedNames
                     | BDCParser.PackageContents.Permissions);          

if (parseContext.Errors.Length > 0)
{
   //Print errors.
}

请参阅

引用

Microsoft.Office.BusinessData.Parser.ParseContext

Microsoft.SharePoint.BusinessData.Parser.ParseContext

Microsoft.Office.BusinessData.MetadataModel.FileBackedMetadataCatalog

FileBackedMetadataCatalog.ImportPackage(XmlReader, ParseContext, PackageContents)

Microsoft.SharePoint.BusinessData.MetadataModel.FileBackedMetadataCatalog

FileBackedMetadataCatalog.ImportPackage(XmlReader, ParseContext, PackageContents)