Queryable.AsQueryable Methode

Definition

Überlädt

AsQueryable(IEnumerable)

Konvertiert einen IEnumerable in einen IQueryable.Converts an IEnumerable to an IQueryable.

AsQueryable<TElement>(IEnumerable<TElement>)

Konvertiert ein generisches IEnumerable<T> in ein generisches IQueryable<T>.Converts a generic IEnumerable<T> to a generic IQueryable<T>.

AsQueryable(IEnumerable)

Konvertiert einen IEnumerable in einen 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

Parameter

source
IEnumerable

Eine zu konvertierende Sequenz.A sequence to convert.

Gibt zurück

IQueryable

Ein IQueryable, das die Eingabesequenz darstellt.An IQueryable that represents the input sequence.

Ausnahmen

Für einige source wird IEnumerable<T> von T nicht implementiert.source does not implement IEnumerable<T> for some T.

source ist null.source is null.

Hinweise

Wenn der Typ von source implementiert IQueryable<T> , wird AsQueryable(IEnumerable) er direkt zurückgegeben.If the type of source implements IQueryable<T>, AsQueryable(IEnumerable) returns it directly. Andernfalls wird ein-Wert zurückgegeben IQueryable<T> , der Abfragen ausführt, indem in anstelle der in die entsprechenden Abfrage Operator Methoden aufgerufen werden Enumerable Queryable .Otherwise, it returns an IQueryable<T> that executes queries by calling the equivalent query operator methods in Enumerable instead of those in Queryable.

Bei dieser Methode wird davon ausgegangen, dass source IEnumerable<T> für einige implementiert T .This method assumes that source implements IEnumerable<T> for some T. Zur Laufzeit ist das Ergebnis vom Typ IQueryable<T> für das gleiche T .At runtime, the result is of type IQueryable<T> for the same T. Diese Methode ist in dynamischen Szenarios nützlich, wenn Sie den Typ von nicht statisch kennen T .This method is useful in dynamic scenarios when you do not statically know the type of T.

Gilt für:

AsQueryable<TElement>(IEnumerable<TElement>)

Konvertiert ein generisches IEnumerable<T> in ein generisches IQueryable<T>.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)

Typparameter

TElement

Der Typ der Elemente von source.The type of the elements of source.

Parameter

source
IEnumerable<TElement>

Eine zu konvertierende Sequenz.A sequence to convert.

Gibt zurück

IQueryable<TElement>

Ein IQueryable<T>, das die Eingabesequenz darstellt.An IQueryable<T> that represents the input sequence.

Ausnahmen

source ist null.source is null.

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie verwendet wird, um AsQueryable<TElement>(IEnumerable<TElement>) eine IEnumerable<T> in eine zu konvertieren 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

Hinweise

Wenn der Typ von source implementiert IQueryable<T> , wird AsQueryable<TElement>(IEnumerable<TElement>) er direkt zurückgegeben.If the type of source implements IQueryable<T>, AsQueryable<TElement>(IEnumerable<TElement>) returns it directly. Andernfalls wird ein-Wert zurückgegeben IQueryable<T> , der Abfragen ausführt, indem in anstelle der in die entsprechenden Abfrage Operator Methoden aufgerufen werden Enumerable Queryable .Otherwise, it returns an IQueryable<T> that executes queries by calling the equivalent query operator methods in Enumerable instead of those in Queryable.

Gilt für: