第十二节: EF的三种模式(二) 之 ModelFirst模式(SQLServer为例)
2017-11-04 21:06
323 查看
一. 简介
顾名思义,ModelFirst是模型优先,是DBFirst的逆向模式,先建立实体数据模型,然后根据实体数据模型来生成数据库,从而驱动整个开发流程.(生成一个空的edmx文件,手动在里面建立实体模型)
(1). 优点:符合当前流行的面向领域驱动设计的开发模式,可以用设计建模的思维来进行代码开发,符合面向对象的编程思想.
(2). 缺点:当实体需要改变的时候,需要重新映射生成数据库,这个时候数据库中的数据会被清空.
二. 使用步骤
1. 选择模型:空的EF设计器
2. 新增实体
3. 新增标量属性
4. 新建关联(根据项目需要)
5. 根据模型生成数据库,生成SQL文件
6. 在SQLServer建立一个名字对应的空数据库,然后执行SQL脚本
7. 生成的数据库连接字符串根据实际项目,看是否需要迁移到主文件中
8. 大功告成,尽情使用吧
顾名思义,ModelFirst是模型优先,是DBFirst的逆向模式,先建立实体数据模型,然后根据实体数据模型来生成数据库,从而驱动整个开发流程.(生成一个空的edmx文件,手动在里面建立实体模型)
(1). 优点:符合当前流行的面向领域驱动设计的开发模式,可以用设计建模的思维来进行代码开发,符合面向对象的编程思想.
(2). 缺点:当实体需要改变的时候,需要重新映射生成数据库,这个时候数据库中的数据会被清空.
二. 使用步骤
1. 选择模型:空的EF设计器
2. 新增实体
3. 新增标量属性
4. 新建关联(根据项目需要)
5. 根据模型生成数据库,生成SQL文件
6. 在SQLServer建立一个名字对应的空数据库,然后执行SQL脚本
7. 生成的数据库连接字符串根据实际项目,看是否需要迁移到主文件中
8. 大功告成,尽情使用吧
public static void TestModelFirst() { using (ModelDB1Container db = new ModelDB1Container()) { try { MyUserInfor myUserInfor = new MyUserInfor(); myUserInfor.name = "txt" + Guid.NewGuid().ToString("N").Substring(6); db.MyUserInforSet.Add(myUserInfor); int n = db.SaveChanges(); if (n > 0) { Console.WriteLine("添加成功"); } } catch (Exception) { Console.WriteLine("添加失败"); } } }
相关文章推荐
- 第十一节: EF的三种模式(一) 之 DBFirst模式(SQLServer和MySQL两套方案)
- EF三种编程方式详细图文教程(C#+EF)之Model First
- EF三种编程方式详细图文教程(C#+EF)之Model First
- 《ASP.NET MVC4 WEB编程》学习笔记------Entity Framework的Database First、Model First和Code Only三种开发模式
- EF三种编程方式详细图文教程(C#+EF)之Model First
- sqlserver 三种恢复模式
- Entity Framework 4中的Code-First, Model-First和Database-First模式(转)
- EF下 CodeFirst、DBFirst与ModelFirst分析
- 解决MVC EF Code First错误:Model compatibility cannot be checked because the EdmMetadata type was not included in the model.
- ado.net EF CodeOnly/CodeFirst设计模式实例演示
- EF+Code First+Database First+Model First,EF开发流程
- EF三种编程方式详细图文教程(C#+EF)之Database First
- Entity Framework 4中的Code-First, Model-First和Database-First模式
- 【.NET】EF框架之三种模式
- 使用ef code first模式,在部署后服务器端把数据库同步到最新版本的方法
- EF 4.1 Model & Database First Walkthrough 学习摘要
- Asp.net mvc + .net ef database first 或 model first 时如何添加验证特性
- Asp.net mvc + .net ef database first 或 model first 时如何添加验证特性
- 【EF】ModelFirst实体优先
- EF CodeFirst中Model变化时手动建表