一. 简介

  顾名思义,ModelFirst是模型优先,是DBFirst的逆向模式,先建立实体数据模型,然后根据实体数据模型来生成数据库,从而驱动整个开发流程.(生成一个空的edmx文件,手动在里面建立实体模型)

(1). 优点:符合当前流行的面向领域驱动设计的开发模式,可以用设计建模的思维来进行代码开发,符合面向对象的编程思想.

(2). 缺点:当实体需要改变的时候,需要重新映射生成数据库,这个时候数据库中的数据会被清空.

二. 使用步骤

1. 选择模型:空的EF设计器

2. 新增实体

3. 新增标量属性

4. 新建关联(根据项目需要)

  

5. 根据模型生成数据库,生成SQL文件

6. 在SQLServer建立一个名字对应的空数据库,然后执行SQL脚本

7. 生成的数据库连接字符串根据实际项目,看是否需要迁移到主文件中

8. 大功告成,尽情使用吧

 1       public static void TestModelFirst()2         {3             using (ModelDB1Container db = new ModelDB1Container())4             {5                 try6                 {7                     MyUserInfor myUserInfor = new MyUserInfor();8                     myUserInfor.name = "txt" + Guid.NewGuid().ToString("N").Substring(6);9                     db.MyUserInforSet.Add(myUserInfor);
10                     int n = db.SaveChanges();
11                     if (n > 0)
12                     {
13                         Console.WriteLine("添加成功");
14                     }
15                 }
16                 catch (Exception)
17                 {
18                     Console.WriteLine("添加失败");
19                 }
20             }
21         }

第十二节: EF的三种模式(二) 之 ModelFirst模式(SQLServer为例)相关推荐

  1. 三种256MB SPIFLASH的高性能模式和软复位学习笔记

    三种256MB SPIFLASH的高性能模式和软复位学习笔记 WINBONE CONTINUE READ MODE The Fast Read Dual I/O The Fast Read Quad ...

  2. 8-设计模式之行为型模式二(状态模式、观察者模式、中介者模式)

    设计模式之行为型模式二(状态模式.观察者模式.中介者模式) 6.5 状态模式 6.5.1 概述 6.5.2 结构 6.5.3 案例实现 6.5.4 优缺点 6.5.5 使用场景 6.6 观察者模式 6 ...

  3. 第十四节: EF的三种模式(四) 之 原生正宗的 CodeFirst模式的默认约定

    一. 简介 1. 正宗的CodeFirst模式是不含有edmx模型,需要手动创建实体.创建EF上下文,然后生成通过代码来自动映射生成数据库. 2. 旨在:忘记SQL.忘记数据库. 3. 三类配置:On ...

  4. 第十一节: EF的三种模式(一) 之 DBFirst模式(SQLServer和MySQL两套方案)

    一. 简介 EF连接数据库有三种模式,分别是DBFirst.ModelFirst.CodeFirst,分别适用于不同的开发场景. 该章节,将主要介绍EF的DBFirst连接SQLServer数据库和M ...

  5. 第十三节: EF的三种模式(三) 之 来自数据库的CodeFirst模式

    一. 简介 [来自数据库的Code First模式]实质上并不是CodeFirst模式,而是DBFirst模式的轻量级版本,在该模式中取消了edmx模型和T4模板,直接生成了EF上下文和相应的类,该模 ...

  6. 第七节: EF的三种事务的应用场景和各自注意的问题(SaveChanges、DBContextTransaction、TransactionScope)

    一. 什么是事务 我们通俗的理解事务就是一系列操作要么全部成功.要么全部失败(不可能存在部分成功,部分失败的情况). 举一个事务在我们日常生活中的经典例子:两张银行卡(甲.乙),甲向乙转钱,整个过程需 ...

  7. 第十节: EF的三种追踪实体状态变化方式(DBEntityEntry、ChangeTracker、Local)

    一. 简介 我们在前面章节介绍EF基本增删改的时候,曾说过EF的SaveChanges()方法,会一次性的将所有的实体的状态变化统一提交到数据库,那么你是否想过EF的实体会有哪些状态变化呢?什么原因会 ...

  8. 三种最流行的商业模式解析:让顾客感觉占便宜,你才能赚更多钱

    商业模式是一切企业的经营根本,在所有商业模式中,盈利模式是祖师爷爷,商业模式其实就是最赚钱的模式.但是真正能够了解甚至能够运用得好的人是非,常少的,期间以傻逼者居多,破产者无数. 以下三种模式,是商业 ...

  9. 一,三种基础的数据复用模式 IR,OR,WR

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.数据复用的作用 二.基本参数和卷积模型介绍 二.数据复用方式 1.IR模式 2.OR模式 3.WR模式 总结 前言 ...

最新文章

  1. 采集网站特殊文件Meta信息
  2. TCP/IP协议面试常见题目
  3. linux mint开启热点,Linux Mint 17 + 小米WIFI创建手机热点
  4. go语言csv包_玩转数据处理120题R语言版本
  5. java高级断言_Java之断言
  6. linux 内核 企鹅,Linux 内核 Makefile 体系简单分析
  7. 数据结构之树的存储结构
  8. 语法制导定义 SDD
  9. 小程序会话服务器,完美解决小程序session问题
  10. 《博弈论全家桶》(ACM / OI)(超全的博弈论 / 组合游戏大合集)
  11. Endnote导出目标期刊的参考文献的格式
  12. 如何在Edge中添加兼容性站点?
  13. 海湾gst5000主机消防广播_海湾消防主机JB-QG_T-GST5000_JB-QB-GST500控制器说明书.doc
  14. 小菜叫你玩破解和逆向(1)
  15. kali的ip转发失败怎么解决?
  16. BeyondCompare去掉时间戳的匹配
  17. 基于深度学习的遥感测绘行业解决方案
  18. Git连接oschina管理代码版本
  19. 软件构造 Lab-2 Report
  20. python解越南逆天小学数学题

热门文章

  1. 关于Windows下的访问控制模型
  2. Ubuntu下gcc多版本共存和版本切换
  3. 学习曾国藩,学做人做事学技术
  4. Web应用中request获取各种获取path或URI,URL的方法
  5. 安装php时,make步骤报错make: *** [sapi/fpm/php-fpm] Error 1
  6. [Leetcode][第679题][JAVA][24点游戏][回溯][暴力]
  7. Java学习笔记3——集合框架
  8. java面向对象程序设计董小园_java面向对象程序设计(董小园版).doc
  9. matlab 写excel 慢_吐槽一下MATLAB的workspace
  10. 此处不允许使用分组函数_Excel中使用Vlookup函数实现数据分组