Method GroupJoin
GroupJoin<TOuter, TInner, TKey, TResult>(IQueryable<TOuter>, IMongoCollection<TInner>, Expression<Func<TOuter, TKey>>, Expression<Func<TInner, TKey>>, Expression<Func<TOuter, IEnumerable<TInner>, TResult>>)
Correlates the elements of two sequences based on key equality and groups the results.
public static IQueryable<TResult> GroupJoin<TOuter, TInner, TKey, TResult>(this IQueryable<TOuter> outer, IMongoCollection<TInner> inner, Expression<Func<TOuter, TKey>> outerKeySelector, Expression<Func<TInner, TKey>> innerKeySelector, Expression<Func<TOuter, IEnumerable<TInner>, TResult>> resultSelector)
Parameters
outer
IQueryable<TOuter>The first sequence to join.
inner
IMongoCollection<TInner>The collection to join to the first sequence.
outerKeySelector
Expression<Func<TOuter, TKey>>A function to extract the join key from each element of the first sequence.
innerKeySelector
Expression<Func<TInner, TKey>>A function to extract the join key from each element of the second sequence.
resultSelector
Expression<Func<TOuter, IEnumerable<TInner>, TResult>>A function to create a result element from an element from the first sequence and a collection of matching elements from the second sequence.
Returns
- IQueryable<TResult>
An IQueryable<T> that contains elements of type
TResult
obtained by performing a grouped join on two sequences.
Type Parameters
TOuter
The type of the elements of the first sequence.
TInner
The type of the elements of the second sequence.
TKey
The type of the keys returned by the key selector functions.
TResult
The type of the result elements.