12

Linq-to-Entities を使用してを受け取り、IQueryable<T>を返すジェネリック メソッドがあります。IOrderedQuerable<T>

input.OrderBy(p => p.something)のプロパティがわからないため、単純なものは機能しませんT(これをインターフェイスに制約することはできません)。

結果を ( ) にキャストすることは、実行時エラーが発生する時点で実際にorでIOrderedQuerable<T>使用しようとするまで機能するようです。.Skip().Take()

理論的には、リフレクションを使用して、または何かが見つかったかどうかを確認し、順序として使用する式を構築できると思いますintが、それは非常に汚いようです。

何か案は?

4

1 に答える 1

20
input.OrderBy(p => 0);

こうすることで、アイテムが最初と同じ順序で表示されます。ただし、これには余分な CPU が必要です。

于 2013-01-25T15:07:52.967 に答える