Queryable.AsQueryable Method

定義

オーバーロード

AsQueryable(IEnumerable)

IEnumerableIQueryable に変換します。 Converts an IEnumerable to an IQueryable.

AsQueryable<TElement>(IEnumerable<TElement>)

ジェネリックの IEnumerable<T> をジェネリックの IQueryable<T> に変換します。 Converts a generic IEnumerable<T> to a generic IQueryable<T>.

AsQueryable(IEnumerable)

IEnumerableIQueryable に変換します。 Converts an IEnumerable to an IQueryable.

public static System.Linq.IQueryable AsQueryable (this System.Collections.IEnumerable source);
パラメーター
source
IEnumerable

変換するシーケンス。 A sequence to convert.

戻り値

入力シーケンスを表す IQueryable An IQueryable that represents the input sequence.

例外

sourceT に対して IEnumerable<T> を実装していません。 source does not implement IEnumerable<T> for some T.

sourcenullです。 source is null.

注釈

場合の種類source実装IQueryable<T>AsQueryable(IEnumerable)直接返されます。If the type of source implements IQueryable<T>, AsQueryable(IEnumerable) returns it directly. それ以外を返します、IQueryable<T>同等のクエリ演算子メソッドを呼び出すことによってクエリを実行する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.

このメソッドでsource実装IEnumerable<T>一部Tします。This method assumes that source implements IEnumerable<T> for some T. 型の実行時に、結果は、IQueryable<T>同じTします。At runtime, the result is of type IQueryable<T> for the same T. 種類を静的に判断できない場合は、このメソッドは動的なシナリオで役に立ちますTします。This method is useful in dynamic scenarios when you do not statically know the type of T.

AsQueryable<TElement>(IEnumerable<TElement>)

ジェネリックの IEnumerable<T> をジェネリックの IQueryable<T> に変換します。 Converts a generic IEnumerable<T> to a generic IQueryable<T>.

public static System.Linq.IQueryable<TElement> AsQueryable<TElement> (this System.Collections.Generic.IEnumerable<TElement> source);
型パラメーター
TElement

要素の型ソースします。 The type of the elements of source.

パラメーター
source
IEnumerable<TElement>

変換するシーケンス。 A sequence to convert.

戻り値
IQueryable<TElement>

入力シーケンスを表す IQueryable<T> An IQueryable<T> that represents the input sequence.

例外

sourcenullです。 source is null.

次のコード例は、使用する方法を示しますAsQueryable<TElement>(IEnumerable<TElement>)に変換する、IEnumerable<T>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

注釈

場合の種類source実装IQueryable<T>AsQueryable<TElement>(IEnumerable<TElement>)直接返されます。If the type of source implements IQueryable<T>, AsQueryable<TElement>(IEnumerable<TElement>) returns it directly. それ以外を返します、IQueryable<T>同等のクエリ演算子メソッドを呼び出すことによってクエリを実行する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.

適用対象