2010-09-29 59 views
1

是否可以编译将用于分页和排序的查询?例如这是否有道理:排序和分页编译的查询

this.query = CompiledQuery.Compile<...>(
.. 
from row in dbx.Table select row 
) 

.. 

var select = this.query.OrderBy(..).Skip(..).Take(..); 

是否可信?或者每次Order,Skip,Take参数都会重新编译?我应该回到常规查询而不是编译它们吗?

回答

1

在您的示例中,每次都会重新编译查询。

但是,如果您将分页置于的编译查询中,那么它也会编译分页部分。

+0

你的意思是这样的:this.query = CompiledQuery.Compile <...>( .. (从行dbx.Table选择行).OrderBy(参数1).Skip(参数2)。取(参数3) ) – user424950 2010-09-30 07:07:17

+0

是, 像那样 。 – 2010-09-30 12:38:24

+0

请注意,并非所有的DB都可以为'OrderBy'使用params,但 – 2010-09-30 12:38:59