次のようなクエリがあるとします。
var result=collection.OrderBy(orderingFunction).Skip(start).Take(length);
クエリ全体を SQL サーバーで実行して結果を返すか、それとも順序付けられたテーブル全体を返して実行Skip
しTake
、メモリ内で実行するか? OrderBy
が返ってくることに気づいたので心配ですIOrderedEnumerable
。
このようなものはどうですか:
if(orderAscending)
orderedCollection=collection.OrderBy(orderingFunction);
else
orderedCollection=collection.OrderByDescending(orderingFunction);
var result=orderedCollection.Skip(start).Take(length);
この場合、Skip
andTake
の部分はサーバー上で実行されますか、それともメモリ内で実行されますか?