What's New: Business Connectivity Services (BCS) in SharePoint Server 2010

SharePoint 2010

Last modified: April 21, 2010

Applies to: SharePoint Server 2010

In this article
Write-Back to External Systems
Familiar UI
Offline Access to External Data
More Connectivity Options
Extensible Provider Model
Batch and Bulk Operation Support
Symmetrical Server and Client Runtimes
Read Blobs
Read and Write-Back of Complex Types
Life Cycle Management
Enhanced API Set and Extensibility

Microsoft Business Connectivity Services (BCS) (formerly named the Business Data Catalog) provides read/write access to external data from line-of-business (LOB) systems, Web services, databases, and other external systems within Microsoft SharePoint 2010 and Microsoft Office 2010 applications. Both SharePoint 2010 and Office 2010 applications have product features that can use external data directly, both online and offline. Developers can gain access to a rich set of features and rapidly build solutions using familiar tools such as Microsoft Visual Studio 2010 and Microsoft SharePoint Designer 2010.

Business Connectivity Services enhances Office application and SharePoint application capabilities and their user interface (UI) through features, services, and tools. These enhanced capabilities and UI streamline development of solutions with deep integration of external data and services. Experienced users, developers, and business unit IT professionals can integrate assets from external systems and enable interaction with the external data through many types of Office client and server applications. The Business Connectivity Services feature set enables rapid development and deployment of scalable and security-rich solutions. The following diagram shows a high-level view of Business Connectivity Services.

High-level view of Business Connectivity Services

The following are some of the new features of Business Connectivity Services.

Using Business Connectivity Services, you can Create, Read, Update, Delete, and Query (CRUDQ) to the external system from a Microsoft Office application or SharePoint site if the external system supports the operations and is modeled appropriately in the Business Data Connectivity (BDC) service.

External content types provide SharePoint behaviors (such as lists, Web Parts, and profile pages) and Office Type behaviors (such as Microsoft Outlook Contacts, Tasks, and Calendars, Microsoft Word documents, and Microsoft SharePoint Workspace 2010 lists), and capabilities (such as searching and working offline) to external data and services. As a result, users can work in their familiar work environments without needing to learn different (and often proprietary) user interfaces.

Business Connectivity Services provides rich cache and offline work features, and supports cache-based operations. Users working with solutions that are deployed on Microsoft Office 2010 applications, such as Microsoft Outlook 2010 and Microsoft SharePoint Workspace 2010, can manipulate external data efficiently, even when they are working offline or if the server connectivity is slow, intermittent, or unavailable. The read/write operations performed against cached external entities are synchronized when connection to the server becomes available. It also provides a flexible external data caching mechanism that is as transparent as possible while still enabling the user or application to have explicit control over the content of the cache when required via automatic and manual cleanup.

The core function of BDC is to provide connectivity support to the following types of external systems:

  • Databases

  • Web/WCF services

  • Microsoft .NET Framework connectivity assemblies

  • Custom data sources

In addition to connectors for the previous list of data sources provided by BDC, BDC provides a pluggable framework with which developers can plug in connectors for new external system types, thus enabling these new data source types to be accessed via the BDC.

In Microsoft Office SharePoint Server 2007, BDC supported only single item operations, such as search. BDC now provides batch and bulk operation support which enable you to read multiple items in a single call thus reducing round trips to the backend dramatically.

In Microsoft SharePoint Server 2007, BDC was provided only in the Microsoft Office SharePoint Server 2007 Enterprise CAL. In Microsoft Office 2010 and SharePoint 2010, BDC is included in both to provide symmetrical client/server scenarios. The preceding diagram shows the presence of BDC in both SharePoint Server and in the Office client applications. The primary reason for the client-side presence is to enable external data integration scenarios on Office client applications such as Microsoft Outlook 2010 and Microsoft SharePoint Workspace 2010. On the client computer, a SQL CE database is used to cache external data to provide a uniform experience offline in the absence of network connectivity. BDC supports two data paths from client to external system:

  • Client connects directly to external system (known as online connection mode)

  • BDC client fetches data from the local cache (known as cached connection mode)

BDC now supports reading binary large object (BLOB) data. This is useful for streaming BLOBs of data from the external system.

BDC now supports dot notation in field names and therefore enables you to read and write complex types.

Business Connectivity Services provides a set of tools to facilitate creation of models and Office 2010 application artifacts, declaratively and by writing code. You can use Microsoft SharePoint Designer 2010 to rapidly create composite solutions that meet external unit needs without writing code. You can use Visual Studio to create or extend solutions with sophisticated workflows and data that spans structured line-of-external (LOB) systems, unstructured SharePoint applications or Microsoft Office applications, and Web 2.0 services.

Solutions using Business Connectivity Services are assembled from a diverse array of artifacts that must be deployed on the client (an Office 2010 application such as Microsoft Outlook 2010) and the server running SharePoint Server 2010. Business Connectivity Services provides automatic packaging and deployment for solutions. It packages all related artifacts as a single, versioned unit and then publishes them to a SharePoint site. After the artifacts are published on the server, the solution is available to the SharePoint sites immediately. The solution package can then be proactively distributed and deployed (the push model) to the clients or users, and they can be required to "opt in." Business Connectivity Services uses the Visual Studio Click Once deployment to rapidly deploy solutions on the clients.

Developers can use the BDC Runtime object model to write generic applications by using the stereotyped APIs as building blocks. Such generic applications are then assured to work against any external system, including those that are preexisting and those that are yet to be built.

Developers can also write specific applications that make assumptions about the abstract entity model (the fields exposed by these, and the types of the fields).

And with the .NET Assembly Connector, Custom Connector, and the pluggable Secure Store Provider, it provides a rich extensibility mechanism for software developers.