1

我已经开始使用 linq to sql 和实体框架,发现开发体验还不错。就像您可以将查询分开并组合不同查询的方式非常好 - 请参阅管道和过滤器。

但是我发现的问题是,如果我使用已编译的查询,性能可以大大提高(在我的情况下,我不能忽略大约 4 倍)。但是我发现编译查询的问题是他们不喜欢使用 IQueryable...

有人对我如何克服这个缺点有任何想法吗???我的工作方式是编译查询只是引用了其他使用 IQueryable 的查询,这样我就可以切换使用或不使用编译查询。但正如我发现的那样,这不太好用。

有任何想法吗?

干杯安东尼

4

1 回答 1

1

不,您不能用另一个 IQueryable 组合 CompiledQuery 的结果。请记住,CompiledQuery 的唯一目的是缓存将 IQueryable 转换为实体框架规范命令树的结果。如果您可以将它与另一个 IQueryable 组合起来,那么它需要重新编译才能执行,这完全违背了 CompiledQuery 的目的。

于 2009-09-16T13:12:12.773 回答