The way data can be retrieved in .NET. LINQ provides a uniform
way to retrieve data from any object that implements the
IEnumerable<T> interface. With LINQ, arrays, collections,
relational data, and XML are all potential data sources.
Why LINQ?
With LINQ, you can use
the same syntax to retrieve data from any data source:
var query =
from e in employees
where e.id == 1
select e.name
The
middle level represents the three main parts of the LINQ project:
LINQ to Objects is an API that
provides methods that represent a set of standard query operators (SQOs)
to retrieve data from any object whose class implements the
IEnumerable<T> interface. These queries are performed against
in-memory data.
LINQ to ADO.NET
augments SQOs to work against relational data. It is composed of three
parts.
LINQ to SQL
(formerly DLinq) is use to query relational databases such as Microsoft
SQL Server. LINQ to DataSet supports queries by using ADO.NET data sets
and data tables. LINQ to Entities is a Microsoft ORM solution, allowing
developers to use Entities (an ADO.NET 3.0 feature) to declaratively
specify the structure of business objects and use LINQ to query them.
LINQ to XML (formerly XLinq) not only
augments SQOs but also includes a host of XML-specific features for XML
document creation and queries.
Note:What
You Need to Use LINQ
LINQ is a combination of extensions to .NET
languages and class libraries that support them. To use it, you'll need
the following:
Obviously LINQ, which is available from the new
Microsoft .NET Framework 3.5 that you can download at http://go.microsoft.com/?linkid=7755937.
You
can speed up your application development time with LINQ using Visual
Studio 2008, which offers visual tools such as LINQ to SQL designer and
the Intellisense support with LINQ's syntax.
Optionally, you can
download the Visual C# 2008 Expression Edition tool at
www.microsoft.com/vstudio/express/download. It is the free edition of
Visual Studio 2008 and offers a lot of LINQ support such as Intellisense
and LINQ to SQL designer. To use LINQ to ADO.NET, you need SQL
Thanks