Queryable.Contains メソッド

定義

指定した要素が IQueryable<T> に格納されているかどうかを判断します。Determines whether an IQueryable<T> contains a specified element.

オーバーロード

Contains<TSource>(IQueryable<TSource>, TSource, IEqualityComparer<TSource>)

指定した IEqualityComparer<T> を使用して、指定した要素がシーケンスに含まれているかどうかを判断します。Determines whether a sequence contains a specified element by using a specified IEqualityComparer<T>.

Contains<TSource>(IQueryable<TSource>, TSource)

既定の等値比較子を使用して、指定した要素がシーケンスに含まれているかどうかを判断します。Determines whether a sequence contains a specified element by using the default equality comparer.

Contains<TSource>(IQueryable<TSource>, TSource, IEqualityComparer<TSource>)

指定した IEqualityComparer<T> を使用して、指定した要素がシーケンスに含まれているかどうかを判断します。Determines whether a sequence contains a specified element by using a specified IEqualityComparer<T>.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static bool Contains(System::Linq::IQueryable<TSource> ^ source, TSource item, System::Collections::Generic::IEqualityComparer<TSource> ^ comparer);
public static bool Contains<TSource> (this System.Linq.IQueryable<TSource> source, TSource item, System.Collections.Generic.IEqualityComparer<TSource> comparer);
static member Contains : System.Linq.IQueryable<'Source> * 'Source * System.Collections.Generic.IEqualityComparer<'Source> -> bool
<Extension()>
Public Function Contains(Of TSource) (source As IQueryable(Of TSource), item As TSource, comparer As IEqualityComparer(Of TSource)) As Boolean

型パラメーター

TSource

source の要素の型。The type of the elements of source.

パラメーター

source
IQueryable<TSource>

IQueryable<T> の検索対象となる itemAn IQueryable<T> in which to locate item.

item
TSource

シーケンス内で検索するオブジェクト。The object to locate in the sequence.

comparer
IEqualityComparer<TSource>

値を比較する IEqualityComparer<T>An IEqualityComparer<T> to compare values.

戻り値

指定した値を持つ要素が入力シーケンスに含まれている場合は true。それ以外の場合は falsetrue if the input sequence contains an element that has the specified value; otherwise, false.

例外

sourcenull です。source is null.

注釈

Contains<TSource>(IQueryable<TSource>, TSource, IEqualityComparer<TSource>) メソッドは、構築されたジェネリックメソッドとしての呼び出し Contains<TSource>(IQueryable<TSource>, TSource, IEqualityComparer<TSource>) 自体を表す MethodCallExpression を生成します。The Contains<TSource>(IQueryable<TSource>, TSource, IEqualityComparer<TSource>) method generates a MethodCallExpression that represents calling Contains<TSource>(IQueryable<TSource>, TSource, IEqualityComparer<TSource>) itself as a constructed generic method. 次に、source パラメーターの Provider プロパティによって表される IQueryProviderExecute<TResult>(Expression) メソッドに MethodCallExpression を渡します。It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

Contains<TSource>(IQueryable<TSource>, TSource, IEqualityComparer<TSource>) の呼び出しを表す式ツリーを実行した結果として発生するクエリ動作は、source パラメーターの型の実装によって異なります。The query behavior that occurs as a result of executing an expression tree that represents calling Contains<TSource>(IQueryable<TSource>, TSource, IEqualityComparer<TSource>) depends on the implementation of the type of the source parameter. 期待される動作は、comparer を使用して値を比較することによって、sourceitem を含むかどうかを判断することです。The expected behavior is that it determines if source contains item by using comparer to compare values.

Contains<TSource>(IQueryable<TSource>, TSource)

既定の等値比較子を使用して、指定した要素がシーケンスに含まれているかどうかを判断します。Determines whether a sequence contains a specified element by using the default equality comparer.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static bool Contains(System::Linq::IQueryable<TSource> ^ source, TSource item);
public static bool Contains<TSource> (this System.Linq.IQueryable<TSource> source, TSource item);
static member Contains : System.Linq.IQueryable<'Source> * 'Source -> bool
<Extension()>
Public Function Contains(Of TSource) (source As IQueryable(Of TSource), item As TSource) As Boolean

型パラメーター

TSource

source の要素の型。The type of the elements of source.

パラメーター

source
IQueryable<TSource>

IQueryable<T> の検索対象となる itemAn IQueryable<T> in which to locate item.

item
TSource

シーケンス内で検索するオブジェクト。The object to locate in the sequence.

戻り値

指定した値を持つ要素が入力シーケンスに含まれている場合は true。それ以外の場合は falsetrue if the input sequence contains an element that has the specified value; otherwise, false.

例外

sourcenull です。source is null.

次のコード例では、Contains<TSource>(IQueryable<TSource>, TSource) を使用して、シーケンスに特定の要素が含まれているかどうかを確認する方法を示します。The following code example demonstrates how to use Contains<TSource>(IQueryable<TSource>, TSource) to determine whether a sequence contains a specific element.

string[] fruits = { "apple", "banana", "mango", 
                    "orange", "passionfruit", "grape" };

// The string to search for in the array.
string mango = "mango";

bool hasMango = fruits.AsQueryable().Contains(mango);

Console.WriteLine(
    "The array {0} contain '{1}'.",
    hasMango ? "does" : "does not",
    mango);

// This code produces the following output:
//
// The array does contain 'mango'. 

Dim fruits() As String = {"apple", "banana", "mango", _
                        "orange", "passionfruit", "grape"}

' The string to search for in the array.
Dim mango As String = "mango"

Dim hasMango As Boolean = fruits.AsQueryable().Contains(mango)

MsgBox(String.Format("The array {0} contain '{1}'.", _
        IIf(hasMango, "does", "does not"), mango))

' This code produces the following output:
'
' The array does contain 'mango'. 

注釈

Contains<TSource>(IQueryable<TSource>, TSource) メソッドは、構築されたジェネリックメソッドとしての呼び出し Contains<TSource>(IQueryable<TSource>, TSource) 自体を表す MethodCallExpression を生成します。The Contains<TSource>(IQueryable<TSource>, TSource) method generates a MethodCallExpression that represents calling Contains<TSource>(IQueryable<TSource>, TSource) itself as a constructed generic method. 次に、source パラメーターの Provider プロパティによって表される IQueryProviderExecute<TResult>(Expression) メソッドに MethodCallExpression を渡します。It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

Contains<TSource>(IQueryable<TSource>, TSource) の呼び出しを表す式ツリーを実行した結果として発生するクエリ動作は、source パラメーターの型の実装によって異なります。The query behavior that occurs as a result of executing an expression tree that represents calling Contains<TSource>(IQueryable<TSource>, TSource) depends on the implementation of the type of the source parameter. 期待される動作は、sourceitemを含むかどうかを判断することです。The expected behavior is that it determines if source contains item.

適用対象