Queryable.AsQueryable Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Sobrecargas
AsQueryable(IEnumerable) |
Converte um IEnumerable em um IQueryable. |
AsQueryable<TElement>(IEnumerable<TElement>) |
Converte um IEnumerable<T> genérico em um IQueryable<T> genérico. |
AsQueryable(IEnumerable)
- Origem:
- Queryable.cs
- Origem:
- Queryable.cs
- Origem:
- Queryable.cs
Converte um IEnumerable em um 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
Uma sequência a ser convertida.
Retornos
Um IQueryable que representa a sequência de entrada.
Exceções
source
não implementa IEnumerable<T> para alguns T
.
source
é null
.
Comentários
Se o tipo de source
implementa IQueryable<T>, AsQueryable(IEnumerable) retorna-o diretamente. Caso contrário, ele retornará um IQueryable<T> que executa consultas chamando os métodos de operador de consulta equivalentes em Enumerable vez daqueles em Queryable.
Esse método pressupõe que source
implementa IEnumerable<T> para alguns T
. Em runtime, o resultado é do tipo IQueryable<T> para o mesmo T
. Esse método é útil em cenários dinâmicos quando você não sabe estaticamente o tipo de T
.
Aplica-se a
AsQueryable<TElement>(IEnumerable<TElement>)
- Origem:
- Queryable.cs
- Origem:
- Queryable.cs
- Origem:
- Queryable.cs
Converte um IEnumerable<T> genérico em um IQueryable<T> genérico.
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
O tipo dos elementos de source
.
Parâmetros
- source
- IEnumerable<TElement>
Uma sequência a ser convertida.
Retornos
Um IQueryable<T> que representa a sequência de entrada.
Exceções
source
é null
.
Exemplos
O exemplo de código a seguir demonstra como usar AsQueryable<TElement>(IEnumerable<TElement>) para converter um IEnumerable<T> em um 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
Comentários
Se o tipo de source
implementa IQueryable<T>, AsQueryable<TElement>(IEnumerable<TElement>) retorna-o diretamente. Caso contrário, ele retornará um IQueryable<T> que executa consultas chamando os métodos de operador de consulta equivalentes em Enumerable vez daqueles em Queryable.