System.Linq Namespace
The System.Linq namespace provides classes and interfaces that support queries that use Language-Integrated Query (LINQ).
The System.Linq namespace is in the System.Core assembly (in System.Core.dll).
The Enumerable class contains LINQ standard query operators that operate on objects that implement IEnumerable<T>.
The Queryable class contains LINQ standard query operators that operate on objects that implement IQueryable<T>.
For information about LINQ to SQL, see LINQ to SQL.
| Class | Description | |
|---|---|---|
![]() | Enumerable | Provides a set of static (Shared in Visual Basic) methods for querying objects that implement IEnumerable<T>. |
![]() | EnumerableExecutor | Represents an expression tree and provides functionality to execute the expression tree after rewriting it. |
![]() | EnumerableExecutor<T> | Infrastructure. Represents an expression tree and provides functionality to execute the expression tree after rewriting it. |
![]() | EnumerableQuery | Infrastructure. Represents an IEnumerable as an EnumerableQuery data source. |
![]() | EnumerableQuery<T> | Infrastructure. Represents an IEnumerable<T> collection as an IQueryable<T> data source. |
![]() | Lookup<TKey, TElement> | Represents a collection of keys each mapped to one or more values. |
![]() | OrderedParallelQuery<TSource> | Represents a sorted, parallel sequence. |
![]() | ParallelEnumerable | Provides a set of methods for querying objects that implement ParallelQuery{TSource}. This is the parallel equivalent of Enumerable. |
![]() | ParallelQuery | Represents a parallel sequence. |
![]() | ParallelQuery<TSource> | Represents a parallel sequence. |
![]() | Queryable | Provides a set of static (Shared in Visual Basic) methods for querying data structures that implement IQueryable<T>. |
| Interface | Description | |
|---|---|---|
![]() | IGrouping<TKey, TElement> | Represents a collection of objects that have a common key. |
![]() | ILookup<TKey, TElement> | Defines an indexer, size property, and Boolean search method for data structures that map keys to IEnumerable<T> sequences of values. |
![]() | IOrderedEnumerable<TElement> | Represents a sorted sequence. |
![]() | IOrderedQueryable | Represents the result of a sorting operation. |
![]() | IOrderedQueryable<T> | Represents the result of a sorting operation. |
![]() | IQueryable | Provides functionality to evaluate queries against a specific data source wherein the type of the data is not specified. |
![]() | IQueryable<T> | Provides functionality to evaluate queries against a specific data source wherein the type of the data is known. |
![]() | IQueryProvider | Defines methods to create and execute queries that are described by an IQueryable object. |
| Enumeration | Description | |
|---|---|---|
![]() | ParallelExecutionMode | The query execution mode is a hint that specifies how the system should handle performance trade-offs when parallelizing queries. |
![]() | ParallelMergeOptions | Specifies the preferred type of output merge to use in a query. In other words, it indicates how PLINQ should merge the results from the various partitions back into a single result sequence. This is a hint only, and may not be respected by the system when parallelizing all queries. |


