Language Integrated Query

LINQLINQ to SQLLanguage Integrated Query (LINQ)LINQ to ObjectsLINQ-to-SQLLINQ-to-XMLStandard Query Operator
Language Integrated Query (LINQ, pronounced "link") is a Microsoft .NET Framework component that adds native data querying capabilities to .NET languages, originally released as a major part of .NET Framework 3.5 in 2007.wikipedia
111 Related Articles

Query language

querydatabase query languageData query language
Language Integrated Query (LINQ, pronounced "link") is a Microsoft .NET Framework component that adds native data querying capabilities to .NET languages, originally released as a major part of .NET Framework 3.5 in 2007.

.NET Framework version history

.NET Framework 3.0.NET Framework 3.5.NET Framework 2.0
Language Integrated Query (LINQ, pronounced "link") is a Microsoft .NET Framework component that adds native data querying capabilities to .NET languages, originally released as a major part of .NET Framework 3.5 in 2007.
In addition, .NET Framework 3.5 also installs .NET Framework 2.0 SP1 and 3.0 SP1 (with the later 3.5 SP1 instead installing 2.0 SP2 and 3.0 SP2), which adds some methods and properties to the BCL classes in version 2.0 which are required for version 3.5 features such as Language Integrated Query (LINQ).

.NET Framework

.NETMicrosoft .NET FrameworkMicrosoft .NET
Language Integrated Query (LINQ, pronounced "link") is a Microsoft .NET Framework component that adds native data querying capabilities to .NET languages, originally released as a major part of .NET Framework 3.5 in 2007.
It includes an expanded set of libraries, including BCL, Windows Forms, ASP.NET, and Windows Presentation Foundation (WPF) but also extensions to the base class libraries ADO.NET, Language Integrated Query (LINQ), Windows Communication Foundation (WCF), and Workflow Foundation (WF).

Monad (functional programming)

monadsmonadmonadic
Other uses, which utilize query expressions as a general framework for readably composing arbitrary computations, include the construction of event handlers or monadic parsers.

Fluent interface

fluent-stylefluent interfaces
It also defines a set of method names (called standard query operators, or standard sequence operators), along with translation rules used by the compiler to translate fluent-style query expressions into expressions using these method names, lambda expressions and anonymous types.
C# uses fluent programming extensively in LINQ to build queries using "standard query operators".

XML

Extensible Markup LanguageXML documentXML parser
LINQ extends the language by the addition of query expressions, which are akin to SQL statements, and can be used to conveniently extract and process data from arrays, enumerable classes, XML documents, relational databases, and third-party data sources.
Similar notations are used in Microsoft's LINQ implementation for Microsoft .NET 3.5 and above, and in Scala (which uses the Java VM).

Anonymous type

It also defines a set of method names (called standard query operators, or standard sequence operators), along with translation rules used by the compiler to translate fluent-style query expressions into expressions using these method names, lambda expressions and anonymous types.
This is an important feature for the SQL-like LINQ feature that is integrated into C# and VB.net.

SQL

Structured Query LanguageSQL databaseSQL Databases
LINQ extends the language by the addition of query expressions, which are akin to SQL statements, and can be used to conveniently extract and process data from arrays, enumerable classes, XML documents, relational databases, and third-party data sources.

Many of the concepts that LINQ introduced were originally tested in Microsoft's Cω research project.
First available in 2004 as a compiler preview, Cω's features were subsequently used by Microsoft in the creation of the LINQ features released in 2007 in .NET version 3.5 The concurrency constructs have also been released in a slightly modified form as a library, named Joins Concurrency Library, for C# and other .NET languages by Microsoft Research.

C Sharp (programming language)

C#Visual C#C# programming language
Furthermore, C# has added several major features to accommodate functional-style programming, culminating in the LINQ extensions released with C# 3.0 and its supporting framework of lambda expressions, extension methods, and anonymous types.

Operator (computer programming)

operatoroperatorsOperator (programming)
The set of query operators defined by LINQ is exposed to the user as the Standard Query Operator (SQO) API.

SQL Server Compact

SQL CEMicrosoft SQL Server 2005 Compact EditionCompact aka CE edition
The LINQ to SQL provider allows LINQ to be used to query Microsoft SQL Server databases, including SQL Server Compact databases.
It also includes ADO.NET providers for data access using ADO.NET APIs, and built-in synchronization capabilities, as well as support for LINQ and Entity Framework.

Microsoft Visual Studio

Visual StudioVisual Studio 2005Visual Studio 2008
Visual Studio 2008 includes a mapping designer that can be used to create the mapping between the data schemas in the object as well as the relational domain.
Like any other IDE, it includes a code editor that supports syntax highlighting and code completion using IntelliSense for variables, functions, methods, loops, and LINQ queries.

Parallel Extensions

Task Parallel LibraryPLINQTPL
Version 4 of the .NET framework includes PLINQ, or Parallel LINQ, a parallel execution engine for LINQ queries.
PLINQ, or Parallel LINQ, parallelizing the execution of queries on objects (LINQ to Objects) and XML data (LINQ to XML).

F Sharp (programming language)

F#F# programming language F# (programming language)
In F# 3.0 the F# quotation and computation expression features are combined to implement LINQ queries.

ADO.NET

ADOADO.NET 2.0Entity Data Model
LINQ comes with LINQ Providers for in-memory object collections, Microsoft SQL Server databases, ADO.NET datasets and XML documents.
LINQ to SQL (formerly called DLINQ) allows LINQ to be used to query Microsoft SQL Server databases, including SQL Server Compact databases.

List comprehension

list comprehensionsarray comprehensionsComprehension
C# 3.0 has a group of related features called LINQ, which defines a set of query operators for manipulating object enumerations.

List of CLI languages

CLI languages.NET languages.NET language
Language Integrated Query (LINQ, pronounced "link") is a Microsoft .NET Framework component that adds native data querying capabilities to .NET languages, originally released as a major part of .NET Framework 3.5 in 2007.

Expression (computer science)

expressionexpressionsevaluation environment
LINQ extends the language by the addition of query expressions, which are akin to SQL statements, and can be used to conveniently extract and process data from arrays, enumerable classes, XML documents, relational databases, and third-party data sources.

Array data structure

arrayarraysvector
LINQ extends the language by the addition of query expressions, which are akin to SQL statements, and can be used to conveniently extract and process data from arrays, enumerable classes, XML documents, relational databases, and third-party data sources.

Class (computer programming)

classclassesPartial class
LINQ extends the language by the addition of query expressions, which are akin to SQL statements, and can be used to conveniently extract and process data from arrays, enumerable classes, XML documents, relational databases, and third-party data sources.

Relational database

relational database management systemRDBMSrelational databases
LINQ extends the language by the addition of query expressions, which are akin to SQL statements, and can be used to conveniently extract and process data from arrays, enumerable classes, XML documents, relational databases, and third-party data sources.

Parsing

parserparseparsed
Other uses, which utilize query expressions as a general framework for readably composing arbitrary computations, include the construction of event handlers or monadic parsers.