Entity Framework中的Model-First模式
在Model-First中,直接在EDMX的设计器中创建实体、关系和继承层次结构,然后从模型生成数据库。
首先,在Visual Studio的解决方案资源管理器中右键单击项目,添加新的实体数据模型(2012/2015/2017)-> add -> new Item。这将打开“添加新项目”弹出框。在弹出窗口中,选择ADO.NET实体数据模型,为EDM提供适当的名称,然后单击Add按钮。这将打开实体数据模型向导。选择Empty EF Designer模型并在向导中单击Finish,如下所示。
您可以通过右键单击设计器空白处 -> Add New -> entity在空设计器上创建实体、关联和继承。
在“添加实体”对话框中,输入实体的名称。此外,您还可以更改实体集和键属性的默认设置。我们将保持默认设置。单击OK生成一个实体。
您还可以在生成的实体中添加标量属性,方法是右键单击实体-> add New -> Scalar Property。
输入标量属性的名称,如下所示。
以同样的方式,您可以使用工具箱添加其他实体和关联。
在空模型的设计面上创建所需的实体、关联和继承之后,您可以使用设计器的上下文菜单选项“从模型生成数据库”来生成DDL脚本。
这将打开生成数据库向导。您可以选择现有的数据库或通过单击new connection…创建一个新的连接。选择数据库服务器,输入要创建的数据库的名称,然后单击OK。它将要求您确认是否创建新数据库。单击Yes,创建数据库。
单击Next为DB模型生成DDL,如下所示。
这将添加<ModelName>.edmx.sql 文件。您可以在Visual Studio中通过打开.sql文件->右键单击->执行来执行DDL脚本。
现在,您可以通过右键单击设计器并选择Add Code Generation Item…来生成上下文类和实体。这将打开一个弹出窗口来选择EF 6或EF 5 DbContext Generator项目。选择EF 6 DbContext Generator项目,因为我们正在使用EF 6,然后单击Add按钮。
这将添加<ModelName>.Context.tt和<ModelName>.tt与上下文类和实体类,如下所示。
因此,通过这种方式,您可以设计您的DB模型,然后根据该模型生成数据库和类。这被称为Model-First。
参考
https://www.entityframeworktutorial.net/
https://msdn.microsoft.com/