Business Data Connectivity Service (BDC) 概述
上次修改时间: 2010年6月29日
适用范围: SharePoint Foundation 2010
Business Data Connectivity (BDC) Service 是以前在 Microsoft Office SharePoint Server 2007 中提供的新版本的业务数据目录。现在,在 Microsoft SharePoint Foundation 2010 中仍提供该服务。BDC 是作为 SharePoint Foundation 2010 中的共享服务实现的,并且仍然依赖元数据存储。通过 BDC 服务,您能够以声明的方式对外部系统建模,以便能够在 SharePoint Server 2010 中(以及通过 Business Connectivity Services 富客户端组件,在 Microsoft Office 2010 应用程序中)公开外部数据。BDC 可桥接 SharePoint 网站和业务应用程序之间的间隙,使您能够将各种外部系统中的关键数据导入 SharePoint 列表(通过新外部列表功能和 外部数据列)、Web 部件、搜索、用户配置文件和自定义应用程序。
BDC 的核心功能是向各种类型的外部系统提供连接,它可为连接到以下类型的数据源提供内置支持:
数据库
Windows Communication Foundation (WCF) 和 Web 服务
Microsoft .NET Framework 程序集
自定义数据源;BDC 提供了可插入连接器框架,开发人员可使用它插入适用于新外部系统类型的连接器,以便通过 BDC 访问这些新数据源类型
图 1 是 BDC 的概要图。
图 1. BDC 的概要视图
BDC 的主要设计目标是使您能够以声明的方式通过极少量编码公开各种外部系统中的业务数据。为实现此目标,BDC 提供了通过元数据模型对基础数据源进行同类访问的功能,该元数据模型可提供一致且简化的客户端对象模型。
通过其中心元数据存储,BDC 可使用以下项来提供一种用于存储外部系统编程接口的说明的机制:
数据结构,例如 Method、Parameter、TypeDescriptor、LobSystem 对象和 LobSystemInstance 对象。
有关外部系统的信息,例如服务器名称、连接字符串和身份验证方法。
方法包含在表示外部数据类型(如"客户"或"订单")的抽象(实体)中。这些方法可提取有关外部系统的接口的复杂信息,并将业务应用程序开发引入信息工作者的领域。然后,BDC 会根据实体(如"Create-An-Entity-Instance"、"Read-Entity-Instances"和"Check-Entity-Instance-Permissions")将外部系统接口定义转换为规范化的常规操作,方法是使用数据结构(例如 MethodInstance、Identifier、FilterDescriptor 和 Association)描述的批注来注解实际业务线 (LOB) 系统接口定义。这些数据结构(统称为 MetadataObjects)组成了 BDC 元数据模型(BDC 的组件)。这些 MetadataObjects 分组为名为模型 的相关集合,以描述一个或多个外部系统。这些模型存储在元数据存储区中。模型存储区可用后,任意解决方案均可使用 BDC 运行时对象模型(BDC 的另一组件)访问该存储区。BDC 运行时对象模型可提供针对各种不同的后端系统来实现编程体验的编程接口。通过以编程方式将应用程序所请求的规范化的常规操作的方法调用转换为特定于外部系统的调用来实现此目的。
图 1 中的图表显示 BDC 的编程模型。
图 1. BDC 编程模型
BDC 是 Business Connectivity Services 的基础,而 BDC 的基础是定义实体、方法、关系等内容的实体模型。定义这些内容后,会用数据填充 BDC 运行时对象模型,并提供对数据的统一常规操作体验(例如 Create、Update 和 Finder 方法)。假定基础外部系统公开创建、读取、更新、删除和查询 (CRUDQ) 接口,则 BDC 运行时对象模型将提供执行这些操作的功能而不需要有关该基础系统的详细信息。