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

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>, AsQueryable(IEnumerable) wird er direkt zurückgegeben.If the type of source implements IQueryable<T>, AsQueryable(IEnumerable) returns it directly. Andernfalls wird ein IQueryable<T> -Wert zurückgegeben, der Abfragen ausführt, indem in Enumerable anstelle der in Queryabledie entsprechenden Abfrage Operator Methoden aufgerufen werden.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 source davon IEnumerable<T> ausgegangen, Tdass für einige implementiert.This method assumes that source implements IEnumerable<T> for some T. Zur Laufzeit ist das Ergebnis vom Typ IQueryable<T> für das gleiche. TAt 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 Tnicht statisch kennen.This method is useful in dynamic scenarios when you do not statically know the type of T.

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 AsQueryable<TElement>(IEnumerable<TElement>) verwendet wird, IEnumerable<T> um eine IQueryable<T>in eine zu konvertieren.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>, AsQueryable<TElement>(IEnumerable<TElement>) wird er direkt zurückgegeben.If the type of source implements IQueryable<T>, AsQueryable<TElement>(IEnumerable<TElement>) returns it directly. Andernfalls wird ein IQueryable<T> -Wert zurückgegeben, der Abfragen ausführt, indem in Enumerable anstelle der in Queryabledie entsprechenden Abfrage Operator Methoden aufgerufen werden.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: