一、Model First开发方式
在项目一开始,就没用数据库时,可以借助EF设计模型,然后根据模型同步完成数据库中表的创建,这就是Model First开发方式。总结一点就是,现有模型再有表。
二、创建Model First Demo
1.右键解决方法“EFDemo”,选择“添加项目-》控制台应用程序”,并将名称改为ModelFirst
2.右键ModelFirst项目,再选择“添加新建项-》ADO.NET实体数据模型”,并命名为ModelFirstModel.edmx,下一步,选择“空EF设计器模型”,完成。
步骤如下图:
3.添加实体Customer
3.1右键模式设计器空白处,选择“新增-》实体”,添加Customer实体
3.2添加标量属性。标量属性可以看成数据库中的普通字段(主键和外键之外的),我们在设计字段属性时,
一定要记得设置其最大范围,否则最终会生成一个比较大的默认范围,严重影响性能
再依次添加标量属性Telphone、CompanyName、Age
4.添加实体之间的联系
4.1在添加一个Product实体,属性类型设为Guid
再依次添加标量属性Name、Price、Weight
4.2 再添加实体Order以及标量属性OrderNo、Amount、CreateTime
4.3 添加实体之间的关联,右键设计器面板空白处“新增-》关联”
Customer和Order 是一个一对多的关系。我们再添加Customer和Product多对多的关联
最终结果如下图:
说明:这里只是为了演示,在实际项目中商品是和订单明细关联的
5.根据模型创建数据库
右键模型设计器界面空白处,选择“根据模型生成数据库”
单击“下一步-》完成”,生成DLL脚本,然后执行生成的DLL脚本
执行DLL脚本后,数据库中出现了4张表
CustomerProduct是怎么回事呢?因为我们之前添加了多对多关联,而多对多关联就是通过一张新表来实现存储的。