Model First先设计Model对象,再由对象生成数据库。

1、新建控制台项目,名称ModelFirst,确定。

2、点击选中项目,右键-->添加-->新建项目--选择数据模板-->ADO.Net实体数据模型-->添加。选择空模型-->下一步。

  

  此时项目目录如下:

  

  双击后打开视图设计页面。在顶部菜单--视图--工具箱,打开实体设置工具箱。

3、双击打开Model1.edmx后,在设计页面右键-->新增-->实体

  

  弹出实体,输入实体名称、实体集名称、主键属性名称如下图,点击确定。

  

4、添加属性,实体添加后,左键单击选择实体-->右键-->新增-->标量属性。

  

  属性分别为FirstName,MiddleName,LastName,PhoneNumber.

5、修改命名,在设计器窗口,右键-->属性。

  

6、开始生成数据库操作。在设计窗口,右键-->根据模型生成数据库(G)...

  

7、设置连接

  

确定后点击下一步,选择版本6.0(如果有),会进入数据库生成DDL模板,点击完成。完成后项目中会添加model.edmx.sql文件,复制到数据库管理工具执行即可。

8、数据库生成操作。复制model.edmx.sql文件,到数据库管理窗口并执行操作。

  

9、数据添加读取,在项目中修改main方法内容如下。   

 static void Main(string[] args)
{
using (var context = new PersonContext())
{
var person = new Person
{
FirstName = "Robert",
MiddleName = "Allen",
LastName = "Doe",
PhoneNumber = "867-5309"
};
context.People.Add(person);
person = new Person
{
FirstName = "John",
MiddleName = "K.",
LastName = "Smith",
PhoneNumber = "824-3031"
};
context.People.Add(person);
person = new Person
{
FirstName = "Billy",
MiddleName = "Albert",
LastName = "Minor",
PhoneNumber = "907-2212"
};
context.People.Add(person);
person = new Person
{
FirstName = "Kathy",
MiddleName = "Anne",
LastName = "Ryan",
PhoneNumber = "722-0038"
};
context.People.Add(person);
context.SaveChanges(); Console.WriteLine("---------------数据已添加------------"); foreach (var item in context.People)
{
Console.WriteLine("FullName:{0}{1}{2}", item.FirstName, item.MiddleName, item.LastName);
} Console.ReadKey(); }
}

总结:Model先建数据实体再根据实体生成数据库,适用全新项目快速建库。

参考资料:EF6Recipes 第二版。

  

最新文章

  1. CSS布局奇淫技巧之--各种居中
  2. Gamma函数是如何被发现的?
  3. C和指针 第十章 结构和联合 习题
  4. Java实现多线程的三种方式
  5. C# 使用Trace记录程序日志
  6. C#随学随记
  7. [POJ 1988] Cube Stacking (带值的并查集)
  8. BZOJ3563 : DZY Loves Chinese
  9. jQuery插件Jeditable的使用(Struts2处理)
  10. 201621123062《java程序设计》第二周学习总结
  11. 出错信息:Incorrect string value: '\xE4\xBD\xA0\xE5\xA5\xBD' for column 'username'
  12. SAP LOGON 快捷登陆方式如何保存密码
  13. Python学习笔记-进度条
  14. http://www.vaikan.com/docs/jquery.form.plugin/jquery.form.plugin.html#getting-started
  15. 蓝牙Remove Bond的流程分析
  16. windows下使用mongodb
  17. (Python mysql驱动的解决)_mysql.c(42) : fatal error C1083: Cannot open include file: 'config-win.h':问题的解决
  18. 不登录到MySQL执行SQL语句
  19. django之设置分页
  20. EF 表联合查询 join

热门文章

  1. 牛客国庆集训day5 B 电音之王 (大数乘模)
  2. Navicat安装教程、建表教程
  3. hxml总结
  4. day 006 小数据池和再谈编码
  5. spring boot——关于一个Mysql主键的问题
  6. Storm与Spark区别
  7. JavaSE---接口
  8. rem布局,根据不用设备分辨率更改跟字体大小
  9. ubuntu15.04 xampp 安装memcache
  10. Ubuntu16.04搭建深度学习框架——TensorFlow