从我的理解。在EF的数据库优先模式中。我们可以通过一些Template为实体类生成代码。例如T4模板,DbContext Generator模板等。但我也可以在Designer.cs文件中找到相同的实体类定义。这是我的问题。
EF Code生成器的用途是什么? Designer.cs文件包含所有明确定义的实体类。是否有必要逐个生成实体类代码?
EF中有多少个模板?他们之间有什么区别?
答案 0 :(得分:0)
EF电源工具允许您为现有数据库生成代码优先实体。
您使用此方法而不是数据库优先(EDMX)方法的原因是,从现在开始,您希望使用代码优先来管理数据库更新。这意味着您可以使用EF迁移,而不是直接对数据库进行更改,然后更新EDMX。
对于从数据库生成代码文件的其他应用程序而言,所有EF方法最终都会生成代码(不仅仅是代码),但只有代码才能控制生成的类(尽管可以使用EDMX生成的部分类) 。模型和数据库第一种方法依赖于在模型/数据库更改时重新生成类。
据我所知,EF电源工具是从现有数据库生成代码优先模型的最佳方式(也是唯一的微软方式)