Share via


Data Services Providers (ADO.NET Data Services)

Note

This topic describes new functionality in ADO.NET Data Services that is available as an update to the .NET Framework version 3.5 Service Pack 1. You can download and install the update from the Microsoft Download Center.

ADO.NET Data Services supports multiple provider models for exposing data as a data service. This topic provides information to enable you to choose the best ADO.NET Data Service provider for your data source.

Data Source Providers

ADO.NET Data Services supports the following providers for using a data source with a data service.

Provider

Description

Entity Framework provider

This provider uses the ADO.NET Entity Framework to enable you to use relational data with a data service by defining a data model that maps to relational data. Your data source can be SQL Server or any other data source with third-party provider support for the Entity Framework. You should choose the Entity Framework provider when you have a relational data source, such as a SQL Server database. For more information, see Entity Framework Provider (ADO.NET Data Services).

Reflection provider

This provider uses reflection to enable you to define a data model based on existing data classes that can be exposed as instances of the IQueryable interface. Updates are enabled by implementing the IUpdatable interface. You should choose this provider when you have static data classes that are defined at runtime, such as those generated by LINQ to SQL or defined by a typed DataSet. For more information, see Reflection Provider (ADO.NET Data Services).

Custom Data Service Providers

ADO.NET Data Services includes a set of providers that enables you to define a data model based on late-bound data types.

Provider

Description

Metadata provider

This is the core custom data service provider that enables you to define a custom data model at runtime by implementing the IDataServiceMetadataProvider interface.

Query provider

This provider enables you to execute queries against a custom data model that is defined by using the IDataServiceMetadataProvider interface. The query provider is created by implementing the IDataServiceQueryProvider interface.

Update provider

This provider enables you to make updates to types that are exposed in a custom data service provider and to manage concurrency. An update provider is created by implementing the IDataServiceUpdateProvider interface

Paging provider

This provider is used with the custom data service provider to enable server-driven paging support. A paging provider for a custom data service is created by implementing the IDataServicePagingProvider interface.

Other Data Service Providers

ADO.NET Data Services has the following additional data service provider that enhances the performance of a data source defined by using one of the other providers.

Provider

Description

Streaming provider

This provider enables you to expose binary large object data types by using ADO.NET Data Services. A streaming provider is created by implementing the IDataServiceStreamProvider interface. This provider can be implemented together with any data source provider. For more information, see Streaming Provider (ADO.NET Data Services).

See Also

Other Resources

Defining a Data Service (ADO.NET Data Services)

Configuring the Data Service (ADO.NET Data Services)

Hosting the Data Service (ADO.NET Data Services)