XEnumerableDistinctByTSource, TKey Method |
Returns a sequence with distinct elements from the input sequence based on the specified key and key comparer.
Namespace:
Linq.Extras
Assembly:
Linq.Extras (in Linq.Extras.dll) Version: 5.0.0+96a4f4bfed64095342c5df107c1fe1fb95603ee5
Syntaxpublic static IEnumerable<TSource> DistinctBy<TSource, TKey>(
this IEnumerable<TSource> source,
Func<TSource, TKey> keySelector,
IEqualityComparer<TKey>? keyComparer = null
)
<ExtensionAttribute>
Public Shared Function DistinctBy(Of TSource, TKey) (
source As IEnumerable(Of TSource),
keySelector As Func(Of TSource, TKey),
Optional keyComparer As IEqualityComparer(Of TKey) = Nothing
) As IEnumerable(Of TSource)
[<ExtensionAttribute>]
static member DistinctBy :
source : IEnumerable<'TSource> *
keySelector : Func<'TSource, 'TKey> *
?keyComparer : IEqualityComparer<'TKey>
(* Defaults:
let _keyComparer = defaultArg keyComparer null
*)
-> IEnumerable<'TSource>
Parameters
- source
- Type: System.Collections.GenericIEnumerableTSource
The sequence to return distinct elements from. - keySelector
- Type: SystemFuncTSource, TKey
A delegate that returns the key used to test equality between elements. - keyComparer (Optional)
- Type: System.Collections.GenericIEqualityComparerTKey
A comparer used to test equality between keys (can be null).
Type Parameters
- TSource
- The type of the elements of source.
- TKey
- The type of the key used for testing equality between elements.
Return Value
Type:
IEnumerableTSourceA sequence whose elements have distinct values for the specified key.
Usage Note
In Visual Basic and C#, you can call this method as an instance method on any object of type
IEnumerableTSource. When you use instance method syntax to call this method, omit the first parameter. For more information, see
Extension Methods (Visual Basic) or
Extension Methods (C# Programming Guide).
See Also