Queryable.Contains Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Определяет, содержит ли IQueryable<T> указанный элемент.
Перегрузки
| Имя | Описание |
|---|---|
| Contains<TSource>(IQueryable<TSource>, TSource) |
Определяет, содержит ли последовательность указанный элемент с помощью средства сравнения равенства по умолчанию. |
| Contains<TSource>(IQueryable<TSource>, TSource, IEqualityComparer<TSource>) |
Определяет, содержит ли последовательность указанный элемент с помощью указанного IEqualityComparer<T>. |
Contains<TSource>(IQueryable<TSource>, TSource)
- Исходный код:
- Queryable.cs
- Исходный код:
- Queryable.cs
- Исходный код:
- Queryable.cs
- Исходный код:
- Queryable.cs
- Исходный код:
- Queryable.cs
Определяет, содержит ли последовательность указанный элемент с помощью средства сравнения равенства по умолчанию.
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);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")]
public static bool Contains<TSource>(this System.Linq.IQueryable<TSource> source, TSource item);
static member Contains : System.Linq.IQueryable<'Source> * 'Source -> bool
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")>]
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.
Параметры
- source
- IQueryable<TSource>
Объект IQueryable<T> , в котором нужно найти item.
- item
- TSource
Объект, который будет находиться в последовательности.
Возвращаемое значение
true Значение , если входная последовательность содержит элемент с указанным значением; falseв противном случае .
- Атрибуты
Исключения
source равно null.
Примеры
В следующем примере кода показано, как использовать для Contains<TSource>(IQueryable<TSource>, TSource) определения того, содержит ли последовательность определенный элемент.
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) создает объект MethodCallExpression , представляющий Contains<TSource>(IQueryable<TSource>, TSource) себя как созданный универсальный метод. Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.
Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Contains<TSource>(IQueryable<TSource>, TSource) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он определяет, содержит ли source он item.
Применяется к
Contains<TSource>(IQueryable<TSource>, TSource, IEqualityComparer<TSource>)
- Исходный код:
- Queryable.cs
- Исходный код:
- Queryable.cs
- Исходный код:
- Queryable.cs
- Исходный код:
- Queryable.cs
- Исходный код:
- Queryable.cs
Определяет, содержит ли последовательность указанный элемент с помощью указанного 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);
public static bool Contains<TSource>(this System.Linq.IQueryable<TSource> source, TSource item, System.Collections.Generic.IEqualityComparer<TSource>? comparer);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")]
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
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")>]
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.
Параметры
- source
- IQueryable<TSource>
Объект IQueryable<T> , в котором нужно найти item.
- item
- TSource
Объект, который будет находиться в последовательности.
- comparer
- IEqualityComparer<TSource>
Значение для сравнения значений IEqualityComparer<T> .
Возвращаемое значение
true Значение , если входная последовательность содержит элемент с указанным значением; falseв противном случае .
- Атрибуты
Исключения
source равно null.
Комментарии
Метод Contains<TSource>(IQueryable<TSource>, TSource, IEqualityComparer<TSource>) создает объект MethodCallExpression , представляющий Contains<TSource>(IQueryable<TSource>, TSource, IEqualityComparer<TSource>) себя как созданный универсальный метод. Затем он передает MethodCallExpressionExecute<TResult>(Expression) метод IQueryProvider метода, представленного Provider свойством source параметра.
Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов Contains<TSource>(IQueryable<TSource>, TSource, IEqualityComparer<TSource>) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он определяет, содержит ли source он item с помощью comparer сравнения значений.