Enumerable.DistinctBy Метод

Определение

Перегрузки

DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Возвращает отдельные элементы из последовательности в соответствии с указанной функцией селектора ключей.

DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Возвращает отдельные элементы из последовательности в соответствии с указанной функцией селектора ключей и с помощью указанного компаратора для сравнения ключей.

DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Исходный код:
Distinct.cs
Исходный код:
Distinct.cs
Исходный код:
Distinct.cs

Возвращает отдельные элементы из последовательности в соответствии с указанной функцией селектора ключей.

public:
generic <typename TSource, typename TKey>
[System::Runtime::CompilerServices::Extension]
 static System::Collections::Generic::IEnumerable<TSource> ^ DistinctBy(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, TKey> ^ keySelector);
public static System.Collections.Generic.IEnumerable<TSource> DistinctBy<TSource,TKey> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,TKey> keySelector);
static member DistinctBy : seq<'Source> * Func<'Source, 'Key> -> seq<'Source>
<Extension()>
Public Function DistinctBy(Of TSource, TKey) (source As IEnumerable(Of TSource), keySelector As Func(Of TSource, TKey)) As IEnumerable(Of TSource)

Параметры типа

TSource

Тип элементов source.

TKey

Тип ключа для различения элементов.

Параметры

source
IEnumerable<TSource>

Последовательность, из которой требуется удалить дубликаты элементов.

keySelector
Func<TSource,TKey>

Функция, извлекающая ключ для каждого элемента.

Возвращаемое значение

IEnumerable<TSource>

Объект IEnumerable<T>, содержащий различающиеся элементы из исходной последовательности.

Исключения

source имеет значение null.

Комментарии

Этот метод реализуется с помощью отложенного выполнения. Немедленно возвращаемое значение — это объект, в котором хранятся все сведения, необходимые для выполнения действия. Запрос, представленный этим методом, не выполняется до тех пор, пока объект не будет перечислен либо путем вызова его GetEnumerator метода напрямую, либо с помощью foreach в C# или For Each в Visual Basic.

Метод DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) возвращает неупорядоченную последовательность, которая не содержит повторяющихся значений. Для сравнения значений Defaultиспользуется компаратор равенства по умолчанию .

См. также раздел

Применяется к

DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Исходный код:
Distinct.cs
Исходный код:
Distinct.cs
Исходный код:
Distinct.cs

Возвращает отдельные элементы из последовательности в соответствии с указанной функцией селектора ключей и с помощью указанного компаратора для сравнения ключей.

public:
generic <typename TSource, typename TKey>
[System::Runtime::CompilerServices::Extension]
 static System::Collections::Generic::IEnumerable<TSource> ^ DistinctBy(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, TKey> ^ keySelector, System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
public static System.Collections.Generic.IEnumerable<TSource> DistinctBy<TSource,TKey> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,TKey> keySelector, System.Collections.Generic.IEqualityComparer<TKey>? comparer);
static member DistinctBy : seq<'Source> * Func<'Source, 'Key> * System.Collections.Generic.IEqualityComparer<'Key> -> seq<'Source>
<Extension()>
Public Function DistinctBy(Of TSource, TKey) (source As IEnumerable(Of TSource), keySelector As Func(Of TSource, TKey), comparer As IEqualityComparer(Of TKey)) As IEnumerable(Of TSource)

Параметры типа

TSource

Тип элементов source.

TKey

Тип ключа для различения элементов.

Параметры

source
IEnumerable<TSource>

Последовательность, из которой требуется удалить дубликаты элементов.

keySelector
Func<TSource,TKey>

Функция, извлекающая ключ для каждого элемента.

comparer
IEqualityComparer<TKey>

Компаратор IEqualityComparer<T>, используемый для сравнения ключей.

Возвращаемое значение

IEnumerable<TSource>

Объект IEnumerable<T>, содержащий различающиеся элементы из исходной последовательности.

Исключения

source имеет значение null.

Комментарии

Этот метод реализуется с помощью отложенного выполнения. Немедленно возвращаемое значение — это объект, в котором хранятся все сведения, необходимые для выполнения действия. Запрос, представленный этим методом, не выполняется до тех пор, пока объект не будет перечислен либо путем вызова его GetEnumerator метода напрямую, либо с помощью foreach в C# или For Each в Visual Basic.

Метод DistinctBy<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) возвращает неупорядоченную последовательность, которая не содержит повторяющихся значений. Если comparer имеет значение null, для сравнения значений используется компаратор Defaultравенства по умолчанию .

См. также раздел

Применяется к