Queryable.Contains Metodo

Definizione

Consente di stabilire se IQueryable<T> contiene un elemento specifico.

Overload

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

Determina se una sequenza contiene uno specifico elemento utilizzando l'operatore di confronto uguaglianze predefinito.

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

Determina se una sequenza contiene un elemento specificato utilizzando un oggetto IEqualityComparer<T> specificato.

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

Determina se una sequenza contiene uno specifico elemento utilizzando l'operatore di confronto uguaglianze predefinito.

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

Parametri di tipo

TSource

Tipo degli elementi di source.

Parametri

source
IQueryable<TSource>

Oggetto IQueryable<T> in cui individuare item.

item
TSource

Oggetto da individuare nella sequenza.

Restituisce

Boolean

true se la sequenza di input contiene un elemento con il valore specificato; altrimenti, false.

Eccezioni

source è null.

Esempio

Nell'esempio di codice seguente viene illustrato come usare Contains<TSource>(IQueryable<TSource>, TSource) per determinare se una sequenza contiene un elemento specifico.

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'.

Commenti

Il Contains<TSource>(IQueryable<TSource>, TSource) metodo genera un MethodCallExpression oggetto che rappresenta la chiamata Contains<TSource>(IQueryable<TSource>, TSource) stessa come metodo generico costruito. Passa quindi l'oggetto MethodCallExpression al Execute<TResult>(Expression) metodo dell'oggetto IQueryProvider rappresentato dalla Provider proprietà del source parametro.

Il comportamento della query che si verifica come risultato dell'esecuzione di un albero delle espressioni che rappresenta la chiamata Contains<TSource>(IQueryable<TSource>, TSource) dipende dall'implementazione del tipo del source parametro. Il comportamento previsto è che determina se source contiene item.

Si applica a

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

Determina se una sequenza contiene un elemento specificato utilizzando un oggetto IEqualityComparer<T> specificato.

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);
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

Parametri di tipo

TSource

Tipo degli elementi di source.

Parametri

source
IQueryable<TSource>

Oggetto IQueryable<T> in cui individuare item.

item
TSource

Oggetto da individuare nella sequenza.

comparer
IEqualityComparer<TSource>

Oggetto IEqualityComparer<T> per confrontare i valori.

Restituisce

Boolean

true se la sequenza di input contiene un elemento con il valore specificato; altrimenti, false.

Eccezioni

source è null.

Commenti

Il Contains<TSource>(IQueryable<TSource>, TSource, IEqualityComparer<TSource>) metodo genera un MethodCallExpression oggetto che rappresenta la chiamata Contains<TSource>(IQueryable<TSource>, TSource, IEqualityComparer<TSource>) stessa come metodo generico costruito. Passa quindi l'oggetto MethodCallExpression al Execute<TResult>(Expression) metodo dell'oggetto IQueryProvider rappresentato dalla Provider proprietà del source parametro.

Il comportamento della query che si verifica come risultato dell'esecuzione di un albero delle espressioni che rappresenta la chiamata Contains<TSource>(IQueryable<TSource>, TSource, IEqualityComparer<TSource>) dipende dall'implementazione del tipo del source parametro. Il comportamento previsto è che determina se source contiene item usando comparer per confrontare i valori.

Si applica a