Queryable.AsQueryable Queryable.AsQueryable Queryable.AsQueryable Queryable.AsQueryable Method

Definición

Sobrecargas

AsQueryable(IEnumerable) AsQueryable(IEnumerable) AsQueryable(IEnumerable) AsQueryable(IEnumerable)

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

AsQueryable<TElement>(IEnumerable<TElement>) AsQueryable<TElement>(IEnumerable<TElement>) AsQueryable<TElement>(IEnumerable<TElement>) 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) AsQueryable(IEnumerable) AsQueryable(IEnumerable) 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 IEnumerable IEnumerable 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.

Comentarios

Si el tipo de source implementa IQueryable<T>, AsQueryable(IEnumerable) devuelve directamente.If the type of source implements IQueryable<T>, AsQueryable(IEnumerable) returns it directly. De lo contrario, devuelve un IQueryable<T> que ejecuta las consultas llamando métodos del operador en la consulta equivalente Enumerable en lugar de los de Queryable.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 implementa IEnumerable<T> para algunos T.This method assumes that source implements IEnumerable<T> for some T. En tiempo de ejecución, el resultado es de tipo IQueryable<T> para el mismo T.At runtime, the result is of type IQueryable<T> for the same T. Este método es útil en escenarios dinámicos cuando no conoce el tipo de forma estática T.This method is useful in dynamic scenarios when you do not statically know the type of T.

AsQueryable<TElement>(IEnumerable<TElement>) AsQueryable<TElement>(IEnumerable<TElement>) AsQueryable<TElement>(IEnumerable<TElement>) 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

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar AsQueryable<TElement>(IEnumerable<TElement>) para convertir un IEnumerable<T> a un IQueryable<T>.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 implementa IQueryable<T>, AsQueryable<TElement>(IEnumerable<TElement>) devuelve directamente.If the type of source implements IQueryable<T>, AsQueryable<TElement>(IEnumerable<TElement>) returns it directly. De lo contrario, devuelve un IQueryable<T> que ejecuta las consultas llamando métodos del operador en la consulta equivalente Enumerable en lugar de los de Queryable.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