Entity Framework 4.1 updates to TPT and TPCT models?
我上次尝试使用4.0版本的Entity Framework。我的实验得到了MSDN论坛和其他地方的一些帖子的证实,结果表明,数据库到OOP映射的TPT(每个类型的表)和TPCT(每个混凝土的表)模型的支持非常差,并且确实不完整。最糟糕的是,为TPT / TPCT查询生成的SQL完全是意大利面条,效率很低,以至于对于任何现实的类型层次结构来说,它都是不可用的。
我的问题是,EF 4.1更新中是否有此更改?具体来说:
-
现在对TPT和TPCT方法是否有适当的设计人员支持?
-
为TPT / TPCT查询/更新生成的SQL现在是否相当有效?
-
关于这些模型的其他信息。
答案是否定的。 EF 4.1包含两个功能:
- DbContext API
- 代码优先支持
代码优先支持根本不使用设计器-映射完全在代码中完成,它反映了设计器提供的功能。 DbContext API是使用EF的一种新奇的方式。它经过某种方式简化,因此用法更好,但同时缺少原始ObjectContext API的某些功能。
您最感兴趣的是DbContext API只是ObjectContext API的package器。而已。核心EF功能绝对没有任何更改,因为主System.Data.Entity.dll程序集没有更改。使用EF 4.1时,仍然需要此程序集,而您需要具有提到的新功能的新EntityFramework.dll程序集。这意味着:
- 设计师还是一样。唯一的新功能是DbContext Generator T4模板
- 生成的SQL完全相同