GroupByMany<TSource, TKey, TElement>(IEnumerable<TSource>, Func<TSource, IEnumerable<TKey>>, Func<TSource, TElement>) Method
Groups the elements of a sequence according to a specified key selector function that returns a sequence of keys and projects the elements for each group by using a specified function.
Containing Type


public static IEnumerable<IGrouping<TKey, TElement>> GroupByMany<TSource, TKey, TElement>(this IEnumerable<TSource> source, Func<TSource, IEnumerable<TKey>> keySelector, Func<TSource, TElement> elementSelector)

Type Parameters

Name Description
TSource The type of the source.
TKey The type of the key.
TElement The type of the element.


Name Type Description
source IEnumerable<TSource> The source.
keySelector Func<TSource, IEnumerable<TKey>> The key selector.
elementSelector Func<TSource, TElement> The element selector.

Return Value

Type Description
IEnumerable<IGrouping<TKey, TElement>> A sequence of groups.