MoreEnumerableDistinctByTSource, TKey(IEnumerableTSource, FuncTSource, TKey, IEqualityComparerTKey) Method
Returns all distinct elements of the given source, where "distinctness"
is determined via a projection and the specified comparer for the projected type.
Namespace: MoreLinqAssembly: MoreLinq (in MoreLinq.dll) Version: 4.4.0+6d97c3b1d482f98300f4446df14742b0e3fafbec
public static IEnumerable<TSource> DistinctBy<TSource, TKey>(
IEnumerable<TSource> source,
Func<TSource, TKey> keySelector,
IEqualityComparer<TKey>? comparer
)
Public Shared 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)
public:
generic<typename TSource, typename TKey>
static IEnumerable<TSource>^ DistinctBy(
IEnumerable<TSource>^ source,
Func<TSource, TKey>^ keySelector,
IEqualityComparer<TKey>^ comparer
)
static member DistinctBy :
source : IEnumerable<'TSource> *
keySelector : Func<'TSource, 'TKey> *
comparer : IEqualityComparer<'TKey> -> IEnumerable<'TSource>
- source IEnumerableTSource
- Source sequence
- keySelector FuncTSource, TKey
- Projection for determining "distinctness"
- comparer IEqualityComparerTKey
- The equality comparer to use to determine whether or not keys are equal.
If null, the default equality comparer for TSource is used.
- TSource
- Type of the source sequence
- TKey
- Type of the projected element
IEnumerableTSourceA sequence consisting of distinct elements from the source sequence,
comparing them by the specified key projection.
This operator uses deferred execution and streams the results, although
a set of already-seen keys is retained. If a key is seen multiple times,
only the first element with that key is returned.