The
following features are new in ADO.NET with the Service Pack 1 release of the
.NET Framework version 3.5. These include the Entity Framework as well as
improvements to LINQ to DataSet and LINQ to SQL. The .NET Framework Data
Provider for SQL Server (SqlClient) has been enhanced to provide support for
SQL Server 2008.
SqlClient Support for SQL Server 2008
Starting
with the .NET Framework version 3.5 Service Pack (SP) 1, the .NET Framework
Data Provider for SQL Server (System.Data.SqlClient) provides full support for
all the new features of the SQL Server 2008 Database Engine. You must install
the .NET Framework 3.5 SP1 (or later) to use these new features with SqlClient.
For more information about .NET Framework support for SQL Server 2008, see New
Features in SQL Server 2008 (ADO.NET). For more information about new Database
Engine features in SQL Server 2008, see What's New (SQL Server 2008) in SQL
Server 2008 Books Online.
ADO.NET Data Platform
The
Data Platform is a multi-release strategy to decrease the amount of coding and
maintenance required for developers by enabling them to program against
conceptual entity data models. In the .NET Framework version 3.5 Service Pack
(SP) 1, the ADO.NET Entity Framework provides the following Data Platform
components:
Component
Description
Entity
Data Model (EDM)
A design specification that defines
application data as sets of entities and relationships. Data in this model
supports object-relational mapping and data programmability across application
boundaries.
EDM
data types and relationships are defined in an conceptual model. This is an XML
schema written in conceptual schema definition language (CSDL). The conceptual
model is used to build programmable classes that represent application data.
Developers can extend these objects as required to support various application
needs. For more information, see Entity Data Model.
Object
Services
Allows programmers to interact with the
conceptual model through a set of common language runtime (CLR) classes. These
classes can be automatically generated from the conceptual model or can be
developed independently to reflect the structure of the conceptual model.
Object Services also provides infrastructure support for the Entity Framework,
including services such as state management, change tracking, identity
resolution, loading and navigating relationships, propagating object changes to
database modifications, and query building support for Entity SQL. For more
information, see Object Services Overview (Entity Framework)
LINQ
to Entities
A language-integrated query (LINQ)
implementation that allows developers to create strongly-typed queries against
the Entity Framework object context by using LINQ expressions and LINQ standard
query operators. LINQ to Entities allows developers to work against a
conceptual model with a very flexible object-relational mapping across Microsoft
SQL Server and third-party databases. For more information, see LINQ to
Entities.
Entity
SQL
A text-based query language designed to
interact with an Entity Data Model. Entity SQL is an SQL dialect that contains
constructs for querying in terms of higher-level modeling concepts, such as
inheritance, complex types, and explicit relationships. Developers can also use
Entity SQL directly with Object Services. For more information, see Entity SQL
Language Reference.
EntityClient
A new .NET Framework data provider used for
interacting with an Entity Data Model. EntityClient follows the .NET Framework
data provider pattern of exposing EntityConnection and EntityCommand objects
that return an EntityDataReader. EntityClient works with the Entity SQL
language, providing flexible mapping to storage-specific data providers. For
more information, see EntityClient and Entity SQL.
ADO.NET
Data Services
The ADO.NET Data Services framework is used to
deploy data services on the Web or on an intranet. The data is structured as
entities and relationships according to the specifications of the Entity Data
Model. Data deployed on this model is addressable by standard HTTP protocol.
For more information, see ADO.NET Data Services Framework.
Entity
Data Model Tools
The Entity Framework provides command-line
tools, wizards, and designers to facilitate building EDM applications. The
EntityDataSource control supports data binding scenarios based on the EDM. The
programming surface of the EntityDataSource control is similar to other data
source controls in Visual Studio. For more information, see Entity Data Model
Tools.
For
more information about the ADO.NET Entity Framework, see Introducing the Entity
Framework.
LINQ to DataSet
LINQ
to DataSet provides LINQ capabilities for disconnected data stored in a
DataSet. For more information, see LINQ to DataSet Overview.
LINQ to SQL
LINQ
to SQL supports queries against an object model that is mapped to the data
structures of a Microsoft SQL Server database without using an intermediate
conceptual model. Each table is represented by a separate class, tightly
coupling the object model to the database schema. LINQ to SQL translates
language-integrated queries in the object model into Transact-SQL and sends them
to the database for execution. When the database returns the results, LINQ to
SQL translates the results back into objects. Beginning with the .NET Framework
version 3.5 SP1, LINQ to SQL supports many of the new SQL data types introduced
with Microsoft SQL Server 2008. For more information, see LINQ to SQL.