排序方法 (LINQ to Entities)

LINQ to Entities 支持大多数 LINQ 排序方法,但不支持接受 IComparer 的排序方法,原因是比较器不能转换为数据源。有关更多信息,请参见 LINQ to Entities 查询中的标准查询运算符。下表列出了支持的和不支持的排序方法。

支持的和不支持的方法

方法 支持 Visual Basic 函数签名 C# 方法签名

OrderBy

支持

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

OrderBy

不支持

Function OrderBy(Of TSource, TKey) ( _
source As IQueryable(Of TSource), _
keySelector As Expression(Of Func(Of TSource, TKey)), _
comparer As IComparer(Of TKey) _
) As IOrderedQueryable(Of TSource)
IOrderedQueryable<TSource> OrderBy<TSource, TKey>(
this IQueryable<TSource> source,
Expression<Func<TSource, TKey>> keySelector,
IComparer<TKey> comparer
)

OrderByDescending

支持

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

OrderByDescending

不支持

Function OrderByDescending(Of TSource, TKey) ( _
source As IQueryable(Of TSource), _
keySelector As Expression(Of Func(Of TSource, TKey)), _
comparer As IComparer(Of TKey) _
) As IOrderedQueryable(Of TSource)
IOrderedQueryable<TSource> OrderByDescending<TSource, TKey>(
this IQueryable<TSource> source,
Expression<Func<TSource, TKey>> keySelector,
IComparer<TKey> comparer
)

ThenBy

支持

Function ThenBy(Of TSource, TKey) ( _
source As IOrderedQueryable(Of TSource), _
keySelector As Expression(Of Func(Of TSource, TKey)) _
) As IOrderedQueryable(Of TSource)
IOrderedQueryable<TSource> ThenBy<TSource, TKey>(
this IOrderedQueryable<TSource> source,
Expression<Func<TSource, TKey>> keySelector
)

ThenBy

不支持

Function ThenBy(Of TSource, TKey) ( _
source As IOrderedQueryable(Of TSource), _
keySelector As Expression(Of Func(Of TSource, TKey)), _
comparer As IComparer(Of TKey) _
) As IOrderedQueryable(Of TSource)
IOrderedQueryable<TSource> ThenBy<TSource, TKey>(
this IOrderedQueryable<TSource> source,
Expression<Func<TSource, TKey>> keySelector,
IComparer<TKey> comparer
) 

ThenByDescending

支持

Function ThenByDescending(Of TSource, TKey) ( _
source As IOrderedQueryable(Of TSource), _
keySelector As Expression(Of Func(Of TSource, TKey)) _
) As IOrderedQueryable(Of TSource)
IOrderedQueryable<TSource> ThenByDescending<TSource, TKey>(
this IOrderedQueryable<TSource> source,
Expression<Func<TSource, TKey>> keySelector
)

ThenByDescending

不支持

Function ThenByDescending(Of TSource, TKey) ( _
source As IOrderedQueryable(Of TSource), _
keySelector As Expression(Of Func(Of TSource, TKey)), _
comparer As IComparer(Of TKey) _
) As IOrderedQueryable(Of TSource)
IOrderedQueryable<TSource> ThenByDescending<TSource, TKey>(
this IOrderedQueryable<TSource> source,
Expression<Func<TSource, TKey>> keySelector,
IComparer<TKey> comparer
)

Reverse

不支持

Function Reverse(Of TSource) ( _
source As IQueryable(Of TSource) _
) As IQueryable(Of TSource)
IQueryable<TSource> Reverse<TSource>(
this IQueryable<TSource> source
)

另请参见

概念

支持的和不支持的方法 (LINQ to Entities)