Queryable.AsQueryable メソッド
定義
オーバーロード
AsQueryable(IEnumerable) |
IEnumerable を IQueryable に変換します。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)
IEnumerable を 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
パラメーター
- source
- IEnumerable
変換するシーケンス。A sequence to convert.
戻り値
入力シーケンスを表す IQueryable。An IQueryable that represents the input sequence.
例外
source
が T
に対して IEnumerable<T> を実装していません。source
does not implement IEnumerable<T> for some T
.
source
が null
です。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:
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)
型パラメーター
- TElement
source
の要素の型。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.
例外
source
が null
です。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.