Groups the elements of a sequence according to a specified key selector function
that returns a sequence of keys.
The keys are compared by using a comparer and each group's elements
are projected by using a specified function.
Syntax
public static IEnumerable<IGrouping<TKey, TElement>> GroupByMany<TSource, TKey, TElement>(this IEnumerable<TSource> source, Func<TSource, IEnumerable<TKey>> keySelector, Func<TSource, TElement> elementSelector, IEqualityComparer<TKey> comparer)
Type Parameters
Name |
Description |
TSource |
The type of the source. |
TKey |
The type of the key. |
TElement |
The type of the element. |
Parameters
Name |
Type |
Description |
source |
IEnumerable<TSource> |
The source. |
keySelector |
Func<TSource, IEnumerable<TKey>> |
The key selector. |
elementSelector |
Func<TSource, TElement> |
The element selector. |
comparer |
IEqualityComparer<TKey> |
The comparer. |
Return Value
Type |
Description |
IEnumerable<IGrouping<TKey, TElement>> |
A sequence of groups. |