EF--Model First
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 第二版。
EF--Model First的更多相关文章
- 使用EF Model First创建edmx模型,数据库有数据的情况下,如何同时更新模型和数据库
使用"EF Model First",我们可以很直观地在edmx文件中创建数据模型,并根据模型生成数据库,整个过程快速而高效.可当数据库中有了一定的数据量,同时,可能需要对模型中字 ...
- asp.net EF model中的默认值设置
在做数据库规划时,通常会规划一些系统字段,也就是由数据库本身自行指定默认值到这个字段上,创建新的“创建时间(CreateDate)”字段就会常常这样设计. 如果希望能有默认值,且让.net 程序在新增 ...
- MVC EF Model First
1 在Models下新建实体数据模型Model.edmx 2 在Model.edmx中点右键建立各个实体,增加Scalar Property 3 空白处点右键,添加关系,勾选增加外键 4 保存Mode ...
- D其他项目打电话AL工程EF Model
Based on your description and the error code, you will just need to ensure that your DataContext ...
- linq 查询的两种方法 (在EF model中实现)
众所周知:linq查询有两种方式 1.通过linq表达式查询 2.是通过linq方法查询 代码中 每一步都有注释
- Entity Framework(EF的Model First方法)
EntityFramework,是Microsoft的一款ORM(Object-Relation-Mapping)框架.同其它ORM(如,NHibernate,Hibernate)一样, 一是为了使开 ...
- EF Code First学习系列
EF Model First在实际工作中基本用不到,前段时间学了一下,大概的了解一下.现在开始学习Code First这种方式.这也是在实际工作中用到最多的方式. 下面先给出一些目录: 1.什么是Co ...
- C#实用杂记-EF全性能优化技巧
原文链接:http://www.makmong.com/947.html#comment-31 EntityFramework 优化建议 2016年1月15日 下午4:54 LEILINKANG ...
- EF Code First列名 'Discriminator' 无效的问题
新建了一个类继承EF Model类,运行报错 EF Code First列名 'Discriminator' 无效 EF会把项目中在DbContext中引用的所有的Model类及这些Model类对应 ...
- EF各版本增删查改及执行Sql语句
自从我开始使用Visual Studio 也已经经历了好几个版本了,而且这中间EF等框架的改变也算是比较多的.本篇文章记录下各个版本EF执行Sql语句和直接进行增删查改操作的区别,方便自己随时切换版本 ...
随机推荐
- 【三支火把】--- 关于UEFI&PCD的总结介绍
1个人理解 个人理解PCD基本等同于Token,应当算是一种描述性语言,按照规定书写好PCD的配置档,在编译的过程中,会根据你的配置生成同等含义的C文档,而在C文档中对应会出现相应的define或者变 ...
- C++基础学习4:引用
C++引用(Reference) 引用(Reference)是C++语言相对于C语言的又一个扩充,是C++常用的一个重要内容之一.类似于指针,只是在声明的时候用"&"取代了 ...
- CF796A Buying A House 模拟
Zane the wizard had never loved anyone before, until he fell in love with a girl, whose name remains ...
- django内置服务器
单进程多线程的 多线程用来并发,各个线程之间不会阻塞,每个线程对应一个连接
- virturalenv 虚拟环境
一.window系统 1.virtualenv的使用 2.pycharm使用 环境变量,path的作用:命令行中执行的命令,他们的路径,必须在path路径中,如果命令行找不到该命令,就是说path没写 ...
- java的Spring学习1--spring引用及属性(setter,getter)注入
1.目录结构 项目->src->main->java->com.test.ppmoney 设置java文件夹为代码 在Project Structure 里的 Modules ...
- 上传文件中文文件名乱码的解决方法以及iconv函数的使用
http://www.jb51.net/article/14530.htm 一般客户端是什么格式就展示什么格式,比如浏览器的UTF-8,windows的GBK
- sqlserver 索引进阶(下)
参考原文 http://www.cnblogs.com/tjy9999/p/4494799.html 第十级, 索引内部结构 建立索引的目的是加快对表中记录的查找或排序.为表设置索引要付出代价的:一是 ...
- Problem05 判断分数等级
题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示. 程序分析:(a>b)?a:b这是条件运算符的基本例子. impo ...
- Javascript各种事件汇总
https://www.cnblogs.com/diligenceday/p/4190173.html#undefined https://www.cnblogs.com/starof/p/40663 ...