IQueryable Interface (System.Linq) (original) (raw)

Definition

Namespace:

System.Linq

Assemblies:

System.Core.dll, System.Linq.Expressions.dll

Assemblies:

netstandard.dll, System.Linq.Expressions.dll

Assembly:

System.Linq.Expressions.dll

Assembly:

System.Core.dll

Assembly:

netstandard.dll

Source:

IQueryable.cs

Source:

ExpressionVisitor.cs

Important

Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Provides functionality to evaluate queries against a specific data source wherein the type of the data is not specified.

public interface class IQueryable : System::Collections::IEnumerable
public interface IQueryable : System.Collections.IEnumerable
type IQueryable = interface
    interface IEnumerable
Public Interface IQueryable
Implements IEnumerable

Derived

Implements

Remarks

The IQueryable interface is intended for implementation by query providers. It is only supposed to be implemented by providers that also implement IQueryable. If the provider does not also implement IQueryable, the standard query operators cannot be used on the provider's data source.

The IQueryable interface inherits the IEnumerable interface so that if it represents a query, the results of that query can be enumerated. Enumeration causes the expression tree associated with an IQueryable object to be executed. The definition of "executing an expression tree" is specific to a query provider. For example, it may involve translating the expression tree to an appropriate query language for the underlying data source. Queries that do not return enumerable results are executed when the Execute method is called.

For more information about how to create your own LINQ provider, see LINQ: Building an IQueryable Provider.

Applies to

See also