实体框架4:预生成视图在哪些场景中提升性能?

时间:2011-01-26 09:33:31

标签: entity-framework entity

我们有一个项目,我们使用Entity Framework 4.我测试了预生成的视图。但我们认为根本没有性能差异。示例:我们有一个事务表,大约有20列。第一次运行像这样的查询时,预生成的视图是否有用:

交易交易= repo.Single(t => t.TransactionId == 22857);

更一般地说,在“where”语句不同的情况下,预生成的视图会增加性能吗?

另一个奇怪的事情是,如果我在debug中运行,在自动生成的... Views.cs类中设置断点,代码永远不会进入自动生成的... Views.cs类。

1 个答案:

答案 0 :(得分:1)

预生成的视图对您的自定义查询没有帮助。不过,CompiledQuery会有所帮助。

他们为使用例如myEntity.SomeAssociation.Load()生成的查询提供帮助。或者懒加载。或者不受限制的全选。

它只对上下文中的第一次执行有所帮助,但它可以是一个显着的改进。