0

据我了解。在 EF 的数据库优先模式中。我们可以通过一些模板为实体类生成代码。例如 T4 模板、DbContext 生成器模板等。但我也可以在 Designer.cs 文件中找到相同的实体类定义。这是我的问题。

  1. EF 代码生成器的目的是什么?Designer.cs 文件具有所有定义良好的实体类。是否需要一一生成实体类代码?

  2. EF 中有多少个模板?它们之间有什么区别?

4

1 回答 1

0

EF 电动工具允许您为现有数据库生成代码优先实体。

您将使用此方法而不是数据库优先 (EDMX) 方法的原因是,从现在开始,您希望使用代码优先来管理数据库更新。这意味着您可以使用 EF 迁移,而不是直接对数据库进行更改然后更新您的 EDMX。

对于从数据库生成代码文件的其他应用程序,所有 EF 方法最终都会生成代码(不仅仅是代码优先),但是只有代码优先可以让您控制生成的类(尽管您可以使用带有 EDMX 生成的部分类)。模型和数据库优先方法依赖于在模型/数据库更改时重新生成类。

据我所知,EF 电动工具是从现有数据库生成代码优先模型的最佳方式(也是唯一的微软方式)

于 2012-07-19T02:50:22.790 回答