次のコードを想定します。
IEnumerable<MyClass> MakeQuery()
{
var query = from m in session.Linq<MyClass>()
select m;
return query;
}
List<MyClass> m1()
{
return MakeQuery()
.Skip(10)
.Take(20)
.ToList<MyClass>();
}
List<MyClass> m2()
{
var query = from m in session.Linq<MyClass>()
select m;
return query
.Skip(10)
.Take(20)
.ToList<MyClass>();
}
すべてのクエリが同じであるとすると、のように見え、m1()
は機能Skip
しTake
ません。確かに、それらがすべて存在するわけではないようです。
なぜこれが発生し、どのように修正できますか?
私はlinq-to-nhibernateを使用しており、このメソッドはページングに使用されます。ありがとう。