Поделиться через


Методы группирования (LINQ to Entities)

LINQ to Entities поддерживает большинство методов группирования LINQ, за исключением тех, которые принимают IEqualityComparer, поскольку сравнивающий класс не может быть преобразован в источник данных. Дополнительные сведения см. в разделе Стандартные операторы запросов в запросах LINQ to Entities. В следующей таблице перечислены поддерживаемые и неподдерживаемые методы группирования.

Поддерживаемые и неподдерживаемые методы

Метод Поддержка Подпись функции Visual Basic Подпись метода C#

GroupBy

Поддерживается

Function GroupBy(Of TSource, TKey) ( _
source As IQueryable(Of TSource), _
keySelector As Expression(Of Func(Of TSource, TKey)) _
) As IQueryable(Of IGrouping(Of TKey, TSource))
IQueryable<IGrouping<TKey, TSource>> GroupBy<TSource, TKey>(
this IQueryable<TSource> source,
Expression<Func<TSource, TKey>> keySelector
)

GroupBy

Не поддерживается

Function GroupBy(Of TSource, TKey) ( _
source As IQueryable(Of TSource), _
keySelector As Expression(Of Func(Of TSource, TKey)), _
comparer As IEqualityComparer(Of TKey) _
) As IQueryable(Of IGrouping(Of TKey, TSource))
IQueryable<IGrouping<TKey, TSource>> GroupBy<TSource, TKey>(
this IQueryable<TSource> source,
Expression<Func<TSource, TKey>> keySelector,
IEqualityComparer<TKey> comparer
)

GroupBy

Поддерживается

Function GroupBy(Of TSource, TKey, TElement) ( _
source As IQueryable(Of TSource), _
keySelector As Expression(Of Func(Of TSource, TKey)), _
elementSelector As Expression(Of Func(Of TSource, TElement)) _
) As IQueryable(Of IGrouping(Of TKey, TElement))
IQueryable<IGrouping<TKey, TElement>> GroupBy<TSource, TKey, TElement>(
this IQueryable<TSource> source,
Expression<Func<TSource, TKey>> keySelector,
Expression<Func<TSource, TElement>> elementSelector
)

GroupBy

Поддерживается

Function GroupBy(Of TSource, TKey, TResult) ( _
source As IQueryable(Of TSource), _
keySelector As Expression(Of Func(Of TSource, TKey)), _
resultSelector As Expression(Of Func(Of TKey, IEnumerable(Of TSource), TResult)) _
) As IQueryable(Of TResult)
IQueryable<TResult> GroupBy<TSource, TKey, TResult>(
this IQueryable<TSource> source,
Expression<Func<TSource, TKey>> keySelector,
Expression<Func<TKey, IEnumerable<TSource>, TResult>> resultSelector
)

GroupBy

Не поддерживается

Function GroupBy(Of TSource, TKey, TElement) ( _
source As IQueryable(Of TSource), _
keySelector As Expression(Of Func(Of TSource, TKey)), _
elementSelector As Expression(Of Func(Of TSource, TElement)), _
comparer As IEqualityComparer(Of TKey) _
) As IQueryable(Of IGrouping(Of TKey, TElement))
IQueryable<IGrouping<TKey, TElement>> GroupBy<TSource, TKey, TElement>(
this IQueryable<TSource> source,
Expression<Func<TSource, TKey>> keySelector,
Expression<Func<TSource, TElement>> elementSelector,
IEqualityComparer<TKey> comparer

GroupBy

Поддерживается

Function GroupBy(Of TSource, TKey, TElement, TResult) ( _
source As IQueryable(Of TSource), _
keySelector As Expression(Of Func(Of TSource, TKey)), _
elementSelector As Expression(Of Func(Of TSource, TElement)), _
resultSelector As Expression(Of Func(Of TKey, IEnumerable(Of TElement), TResult)) _
) As IQueryable(Of TResult)
IQueryable<TResult> GroupBy<TSource, TKey, TElement, TResult>(
this IQueryable<TSource> source,
Expression<Func<TSource, TKey>> keySelector,
Expression<Func<TSource, TElement>> elementSelector,
Expression<Func<TKey, IEnumerable<TElement>, TResult>> resultSelector
)

GroupBy

Не поддерживается

Function GroupBy(Of TSource, TKey, TResult) ( _
source As IQueryable(Of TSource), _
keySelector As Expression(Of Func(Of TSource, TKey)), _
resultSelector As Expression(Of Func(Of TKey, IEnumerable(Of TSource), TResult)), _
comparer As IEqualityComparer(Of TKey) _
) As IQueryable(Of TResult)
IQueryable<TResult> GroupBy<TSource, TKey, TResult>(
this IQueryable<TSource> source,
Expression<Func<TSource, TKey>> keySelector,
Expression<Func<TKey, IEnumerable<TSource>, TResult>> resultSelector,
IEqualityComparer<TKey> comparer
)

GroupBy

Не поддерживается

Function GroupBy(Of TSource, TKey, TElement, TResult) ( _
source As IQueryable(Of TSource), _
keySelector As Expression(Of Func(Of TSource, TKey)), _
elementSelector As Expression(Of Func(Of TSource, TElement)), _
resultSelector As Expression(Of Func(Of TKey, IEnumerable(Of TElement), TResult)), _
comparer As IEqualityComparer(Of TKey) _
) As IQueryable(Of TResult)
IQueryable<TResult> GroupBy<TSource, TKey, TElement, TResult>(
this IQueryable<TSource> source,
Expression<Func<TSource, TKey>> keySelector,
Expression<Func<TSource, TElement>> elementSelector,
Expression<Func<TKey, IEnumerable<TElement>, TResult>> resultSelector,
IEqualityComparer<TKey> comparer
)

См. также

Основные понятия

Поддерживаемые и неподдерживаемые методы (LINQ to Entities)