Business Connectivity Services 工具支持

上次修改时间: 2010年4月15日

适用范围: SharePoint Server 2010

本文内容
SharePoint Designer 2010 中的 BCS 功能
Visual Studio 2010 中的 BCS 功能
SharePoint Designer 2010 与 Visual Studio 2010 之间的互操作性

外部内容类型是用于通过 Microsoft Business Connectivity Services (BCS) 创建解决方案的基本构造基块。Microsoft SharePoint Designer 2010 和 Microsoft Visual Studio 2010 分别提供外部内容类型设计器,但每个设计器面向不同的方案、数据源类型和访问群体类型。

SharePoint Designer 2010 中的 BCS 功能

SharePoint Designer 2010 提供基于外部内容类型撰写从简单到中度复杂的解决方案的"无代码"体验,而您可通过向导驱动的用户界面 (UI) 创作外部内容类型。撰写是指从现有可重用组件汇编解决方案,而不是从头构建解决方案。在创建一个外部内容类型之后,您可以创建和自定义基于它的外部列表、Web 部件页、工作流和表单。

创作外部内容类型

当您在 SharePoint Designer 2010 中打开一个网站时,您将会看到用于创作外部内容类型的新的库和设计器。利用该库,您可以访问发布到共享 Business Connectivity Services 元数据存储区(以前称为"业务数据目录")的外部内容类型的列表。该设计器支持连接到 Microsoft SQL Server 数据库、Windows Communication Foundation (WCF) 服务(包括 Web 服务)和 Microsoft .NET Framework 程序集(以前由代码开发人员创建)。建模方法将发现外部数据源所公开的数据架构和操作,并将它们映射到外部内容类型的所需架构和构造型操作(读取项、读取列表、创建、更新和删除)。因为如此,由外部数据源公开的接口必须可供 Business Connectivity Services 或 Business Connectivity Services 友好使用,这样 SharePoint Designer 2010 才能够使用它。直接访问各个数据库表始终被认为是对 Business Connectivity Services 友好的。有关创建与 Business Connectivity Services 兼容的存储过程、WCF 服务、Web 服务和 .NET Framework 程序集的详细信息,请参阅创建 .NET 连接程序集和 Web 服务

利用 SharePoint Designer 2010,您还可以通过配置允许检索关联外部内容类型实例的构造型关联导航操作,基于外键在外部内容类型之间定义关联。

除了数据架构、构造型操作和关联之外,SharePoint Designer 还使您能够配置外部内容类型的 Office 集成行为。例如,您可以配置数据筛选器、搜索支持以及数据脱机到 Microsoft Outlook 和 Microsoft SharePoint Workspace。您还可以将外部内容类型映射到联系人、任务、约会和公告等本机项目类型。

SharePoint Designer 2010 支持最常用的外部数据连接方案;但是,存在一些高级连接行为不受支持,例如,大容量和批操作构造型、泛型服务或多态服务以及不基于外键的关联。

创作外部列表

在定义一个外部内容类型之后,SharePoint Designer 2010 允许您基于它创建外部列表。您可以通过使用外部内容类型的摘要页中可用的自动生成选项,或通过选择列表库中新的"外部列表"选项,来执行此操作。

生成和创作 InfoPath 表单

利用 SharePoint Designer 2010,您可以使任意外部列表使用 Microsoft InfoPath 表单而非标准的 SharePoint 表单。您可以在创建新的外部列表时选择自动生成 InfoPath 表单,也可以为现有列表生成表单。自动生成的表单功能全面,随时可用,只是在外部内容类型上的字段被认为是"复杂"的情况下并非如此。复杂字段是指其数据类型涉及超出简单值的结构(例如,包含街道、城市、州/省以及国家/地区的地址结构)的字段。在这种情况下,生成表单后,可能需要手动自定义该表单,它才能起作用。您可以始终使用完整的 InfoPath Designer 2010 功能来自定义现有的外部列表 InfoPath 表单,InfoPath Designer 2010 已经过扩展,在外部列表的上下文中启动时,它提供集成的表单自定义体验。

工作流中的外部数据

在工作流空间中,SharePoint Designer 2010 允许您通过创作与外部列表交互的工作流来访问外部数据。常规 SharePoint 列表的读写工作流活动已扩展为支持外部列表。这意味着创作体验与使用常规列表时一样简单和灵活,另一个好处是您可以使用外部列表来访问外部数据源。

备注

外部列表不支持触发工作流。但是,在 SharePoint Designer 2010 中,您可以创建一个网站级别、列表级别或可重用工作流来访问一个或多个外部列表。

Web 部件页和配置文件页

SharePoint Designer 2010 提供对创作 Web 部件页的一般支持,这样您将能够基于外部列表或 BDC Web 部件创建自定义页面。具体到 Business Connectivity Services,SharePoint Designer 2010 允许您为现有的外部内容类型自动生成配置文件页。配置文件页是一种特殊类型的 Web 部件页,它通过显示某外部内容类型实例的详细信息及其关联的外部内容类型,显示该实例的全方位视图。配置文件页是外部数据搜索结果链接的默认目标。

总之,如果您需要在不编写代码的情况下将外部数据集成到 SharePoint 和 Office,我们建议使用 SharePoint Designer 2010。

Visual Studio 2010 中的 BCS 功能

在 Visual Studio 2010 中,您既可以创建可由其他用户用来撰写新解决方案的可重用 Business Connectivity Services 代码组件,也可以创建使用 Business Connectivity Services 的完整客户端-服务器解决方案。对于可重用组件的情况,外部内容类型也许是最重要的,不过您也可以创建实现由 Business Connectivity Services 定义的特定接口的自定义类库项目,来提供外部数据访问逻辑和 UI。

完整的解决方案可能涉及通常打包为 SharePoint 解决方案包 (.wsp) 或 ClickOnce 解决方案包的服务器端和客户端组件的任意组合。这些类型的解决方案通常使用完整的 Visual Studio 功能来创建许多 SharePoint 和 Office 组件,范围从网站、列表和 Web 部件到自定义 Office 加载项。您可以通过使用代码将这些任意组件扩展为通过 Business Connectivity Services 访问外部数据。

创作外部内容类型

从 Business Connectivity Services 角度来看,Visual Studio 2010 中最显著的新增内容是附带一组可视化设计器和代码管理功能的新业务数据连接模型项目模板,利用该模板,能够创作可通过您在 .NET Framework 代码中的自定义连接逻辑访问几乎所有数据源的外部内容类型。该工具的一个显著特点是它封装了 SharePoint 细节,这样您不需要成为 SharePoint 专家也可创建功能非常强大的外部内容类型,这些外部内容类型可执行聚合来自多个源的数据、应用转换和业务逻辑以及处理自定义安全方案等操作。

Visual Studio 2010 中的业务数据连接模型项目始终生成 .Net 连接程序集类型的外部内容类型。可以在 SharePoint 解决方案项目中创作并包括直接连接到数据库、WCF 或 Web 服务的外部内容类型,但是仅支持对这些外部内容类型进行基于 XML 的创作(没有视觉设计体验)。

创作可重用 BCS 组件

在 Visual Studio 2010 中,您可以通过创建实现特定 Business Connectivity Services 定义的接口的标准类库项目,为客户端和服务器创作启用 Business Connectivity Services 的可重用组件。您也可以使用 Business Connectivity Services 对象模型来访问外部数据。可重用组件的一些示例有:

  • 可通过 Outlook 中的功能区调用的代码操作。

  • 可承载于 Outlook 的声明性任务窗格中以表示外部数据的外部数据部件。

  • 通过使用 Business Connectivity Services 对象模型访问外部数据的工作流活动。这些工作流活动然后可在 SharePoint Designer 2010 的工作流设计器中使用。

  • 可以创建字段呈现器来为外部列表内部的复杂内容类型提供自定义 UI。

  • 可用来访问支持自定义身份验证机制的系统的自定义凭据提供程序。

创作启用 BCS 的 Office 加载项

利用 Visual Studio 2010,您可通过创建使用 Business Connectivity Services 对象模型的标准 Office 加载项项目,将外部数据集成到 Office 应用程序中。

工作流中的外部数据

利用 Visual Studio 2010,您可通过创作与外部列表或 Business Connectivity Services 对象模型交互的基于代码的 SharePoint 工作流,来访问外部数据。

SharePoint Designer 2010 与 Visual Studio 2010 之间的互操作性

当创作 SharePoint 解决方案时,您可以使用 Visual Studio 2010 和 SharePoint Designer 2010 的组合。但是,您必须意识到它们的创作和部署模型略有不同,会影响互操作性。SharePoint Designer 使用"实时"连接,这样更改直接保存到 SharePoint 服务器。而在 Visual Studio 2010 中,您必须首先生成项目,然后将其部署到 SharePoint 服务器。在 Visual Studio 2010 中,可以手动部署解决方案包,也可以在用户运行或调试项目时自动部署。

将在 Visual Studio 2010 中创建的项目部署到 SharePoint 服务器之后,可以在 SharePoint Designer 中进一步编辑这些项目。但是,必须手动将在 SharePoint Designer 中创作的组件导出或导入到 Visual Studio。而在 Business Data Connectivity (BDC) Service 模型中,SharePoint Designer 允许您将一个或多个外部内容类型导出到 XML 文件,然后您可将 XML 文件再导入到 Visual Studio。

备注

Visual Studio 不支持对不是基于 .NET Framework 程序集的外部内容类型的视觉体验,因此对于这些外部内容类型,提供仅 XML 的创作体验。

请参阅

概念

Business Connectivity Services:操作方法和演练

Business Connectivity Services:示例 XML 和代码示例