Queryable.AsQueryable Metodo

Definizione

Overload

AsQueryable(IEnumerable)

Converte un oggetto IEnumerable in un oggetto IQueryable.

AsQueryable<TElement>(IEnumerable<TElement>)

Converte un generico oggetto IEnumerable<T> in un generico oggetto IQueryable<T>.

AsQueryable(IEnumerable)

Origine:
Queryable.cs
Origine:
Queryable.cs
Origine:
Queryable.cs

Converte un oggetto IEnumerable in un oggetto IQueryable.

C#
public static System.Linq.IQueryable AsQueryable (this System.Collections.IEnumerable source);

Parametri

source
IEnumerable

Sequenza da convertire.

Restituisce

Un oggetto IQueryable che rappresenta la sequenza di input.

Eccezioni

source non implementa IEnumerable<T> per qualche T.

source è null.

Commenti

Se il tipo di source implementa IQueryable<T>, AsQueryable(IEnumerable) lo restituisce direttamente. In caso contrario, restituisce un oggetto IQueryable<T> che esegue query chiamando i metodi dell'operatore di query equivalenti anziché Enumerable quelli in Queryable.

Questo metodo presuppone che source implementi IEnumerable<T> per alcuni T. In fase di esecuzione, il risultato è di tipo IQueryable<T> per lo stesso T. Questo metodo è utile negli scenari dinamici quando non si conosce in modo statico il tipo di T.

Si applica a

.NET 9 e altre versioni
Prodotto Versioni
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1
UWP 10.0

AsQueryable<TElement>(IEnumerable<TElement>)

Origine:
Queryable.cs
Origine:
Queryable.cs
Origine:
Queryable.cs

Converte un generico oggetto IEnumerable<T> in un generico oggetto IQueryable<T>.

C#
public static System.Linq.IQueryable<TElement> AsQueryable<TElement> (this System.Collections.Generic.IEnumerable<TElement> source);

Parametri di tipo

TElement

Tipo degli elementi di source.

Parametri

source
IEnumerable<TElement>

Sequenza da convertire.

Restituisce

IQueryable<TElement>

Un oggetto IQueryable<T> che rappresenta la sequenza di input.

Eccezioni

source è null.

Esempio

Nell'esempio di codice seguente viene illustrato come usare AsQueryable<TElement>(IEnumerable<TElement>) per convertire un IEnumerable<T> oggetto in un oggetto IQueryable<T>.

C#
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
*/

Commenti

Se il tipo di source implementa IQueryable<T>, AsQueryable<TElement>(IEnumerable<TElement>) lo restituisce direttamente. In caso contrario, restituisce un oggetto IQueryable<T> che esegue query chiamando i metodi dell'operatore di query equivalenti anziché Enumerable quelli in Queryable.

Si applica a

.NET 9 e altre versioni
Prodotto Versioni
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1
UWP 10.0