外键与独立关系 – entity framework5有改进吗?

在使用Entity Framework时,我已经阅读了几篇关于外键与独立关系概念的文章和问题 。 而且我仍然不能100%确定要走哪条路……我宁愿不通过拥有将在FK关系中使用的属性来“污染”我的域名POCO,因为我已经有一个属性引用“有一个”宾语。

我的问题是(看着你@EFTeam,@ Ladislav Mrnka)

  1. 在即将到来的Entity Framework v5中,这个主题有什么改进吗?
  2. 如果我使用FK而不是独立关联(特别是代码优先),是否有更多的优势?

如果你有一个大型模型,你无论如何都必然会“污染”你的域对象(或概念模型)。 对于具有FK映射关联的模型,“视图生成”的成本 – 执行查询或保存更改所必需的EF处理管道中的一个阶段,可以移动到构建时间(“预生成视图”) – 是与具有独立关联的模型相比较低。 这很重要,因为对于小型模型来说,执行它的时间可能不明显,但是它会变得非常快,特别是当有关联映射到可以为空的外键(到-0..1,或者与派生实体到-1)时在TPH映射的层次结构中)。 在官方EF5性能考虑文档中,非常大的模型的视图生成时间的示例差异在“一个月之后然后我们放弃”(具有独立关联)和104分钟(具有FK映射关联)之间给出。 在我的情况下(数百个高度连接的实体),它在25分钟到40秒之间。 EF5中的情况与之前版本中的情况相同。

没有任何改进。 两种选择仍然存在。 使用FK关联的优点是在使用断开连接的对象图时简化处理一对多关系中的更改。 如果您使用它,它还应该简化数据绑定。