Queryable.AsQueryable Método

Definición

Sobrecargas

AsQueryable(IEnumerable)

Convierte una interfaz IEnumerable en IQueryable.Converts an IEnumerable to an IQueryable.

AsQueryable<TElement>(IEnumerable<TElement>)

Convierte un parámetro IEnumerable<T> genérico en un parámetro IQueryable<T> genérico.Converts a generic IEnumerable<T> to a generic IQueryable<T>.

AsQueryable(IEnumerable)

Convierte una interfaz IEnumerable en IQueryable.Converts an IEnumerable to an IQueryable.

public:
[System::Runtime::CompilerServices::Extension]
 static System::Linq::IQueryable ^ AsQueryable(System::Collections::IEnumerable ^ source);
public static System.Linq.IQueryable AsQueryable (this System.Collections.IEnumerable source);
static member AsQueryable : System.Collections.IEnumerable -> System.Linq.IQueryable
<Extension()>
Public Function AsQueryable (source As IEnumerable) As IQueryable

Parámetros

source
IEnumerable

Secuencia que se va a convertir.A sequence to convert.

Devoluciones

IQueryable que representa la secuencia de entrada.An IQueryable that represents the input sequence.

Excepciones

source no implementa IEnumerable<T> para algunos parámetros T.source does not implement IEnumerable<T> for some T.

source es null.source is null.

Comentarios

Si el tipo de source IQueryable<T>implementa, AsQueryable(IEnumerable) lo devuelve directamente.If the type of source implements IQueryable<T>, AsQueryable(IEnumerable) returns it directly. De lo contrario, devuelve IQueryable<T> un que ejecuta consultas mediante una llamada a los métodos de operador Enumerable de consulta equivalentes en Queryableen lugar de los de.Otherwise, it returns an IQueryable<T> that executes queries by calling the equivalent query operator methods in Enumerable instead of those in Queryable.

Este método supone que source IEnumerable<T> implementa para algunos T.This method assumes that source implements IEnumerable<T> for some T. En tiempo de ejecución, el resultado es IQueryable<T> de tipo para Tel mismo.At runtime, the result is of type IQueryable<T> for the same T. Este método es útil en escenarios dinámicos cuando no se conoce el tipo de Tforma estática.This method is useful in dynamic scenarios when you do not statically know the type of T.

AsQueryable<TElement>(IEnumerable<TElement>)

Convierte un parámetro IEnumerable<T> genérico en un parámetro IQueryable<T> genérico.Converts a generic IEnumerable<T> to a generic IQueryable<T>.

public:
generic <typename TElement>
[System::Runtime::CompilerServices::Extension]
 static System::Linq::IQueryable<TElement> ^ AsQueryable(System::Collections::Generic::IEnumerable<TElement> ^ source);
public static System.Linq.IQueryable<TElement> AsQueryable<TElement> (this System.Collections.Generic.IEnumerable<TElement> source);
static member AsQueryable : seq<'Element> -> System.Linq.IQueryable<'Element>
<Extension()>
Public Function AsQueryable(Of TElement) (source As IEnumerable(Of TElement)) As IQueryable(Of TElement)

Parámetros de tipo

TElement

Tipo de los elementos de source.The type of the elements of source.

Parámetros

source
IEnumerable<TElement>

Secuencia que se va a convertir.A sequence to convert.

Devoluciones

IQueryable<TElement>

IQueryable<T> que representa la secuencia de entrada.An IQueryable<T> that represents the input sequence.

Excepciones

source es null.source is null.

Ejemplos

En el ejemplo de código siguiente se muestra AsQueryable<TElement>(IEnumerable<TElement>) cómo usar para IEnumerable<T> convertir un IQueryable<T>en.The following code example demonstrates how to use AsQueryable<TElement>(IEnumerable<TElement>) to convert an IEnumerable<T> to an IQueryable<T>.

List<int> grades = new List<int> { 78, 92, 100, 37, 81 };

// Convert the List to an IQueryable<int>.
IQueryable<int> iqueryable = grades.AsQueryable();

// Get the Expression property of the IQueryable object.
System.Linq.Expressions.Expression expressionTree =
    iqueryable.Expression;

Console.WriteLine("The NodeType of the expression tree is: "
    + expressionTree.NodeType.ToString());
Console.WriteLine("The Type of the expression tree is: "
    + expressionTree.Type.Name);

/*
    This code produces the following output:

    The NodeType of the expression tree is: Constant
    The Type of the expression tree is: EnumerableQuery`1
*/
Dim grades As New List(Of Integer)(New Integer() {78, 92, 100, 37, 81})

' Convert the List to an IQueryable<int>.
Dim iqueryable As IQueryable(Of Integer) = grades.AsQueryable()

' Get the Expression property of the IQueryable object.
Dim expressionTree As System.Linq.Expressions.Expression = _
    iqueryable.Expression

MsgBox("The NodeType of the expression tree is: " _
    & expressionTree.NodeType.ToString())
MsgBox("The Type of the expression tree is: " _
    & expressionTree.Type.Name)

' This code produces the following output:
'
' The NodeType of the expression tree is: Constant
' The Type of the expression tree is: EnumerableQuery`1

Comentarios

Si el tipo de source IQueryable<T>implementa, AsQueryable<TElement>(IEnumerable<TElement>) lo devuelve directamente.If the type of source implements IQueryable<T>, AsQueryable<TElement>(IEnumerable<TElement>) returns it directly. De lo contrario, devuelve IQueryable<T> un que ejecuta consultas mediante una llamada a los métodos de operador Enumerable de consulta equivalentes en Queryableen lugar de los de.Otherwise, it returns an IQueryable<T> that executes queries by calling the equivalent query operator methods in Enumerable instead of those in Queryable.

Se aplica a