EF之Model First模型优先
来源:互联网 发布:yy辅助软件 编辑:程序博客网 时间:2024/05/22 05:29
1、前言
Model First顾名思义,先有实体模型,后有数据库,在本例中我们创建一个RightSystemDb的数据库,包含三张表,用户表、角色表、角色用户表。
2、Model First实战示例
首先打开VS2013创建一个控制台应用程序,命名为MyModelFirstDemo,创建完成以后,如下图:
选中解决方案中的项目名称,点击右键,选择“新建项”,如下图:
选中”ADO.NET实体数据模型”,命名为MyModelFirst,然后点击添加,如下图:
选择”空EF设计器模型”,点击完成,如下图:
在模型设计视图中,添加新实体,如下图:
添加TUsers实体,如下图:
点击确定,如下图:
选中属性,点击右键,选择”新增->标量属性”,如下图:
依次添加标量属性Password与Date,同时创建实体TRoles与TUsersRoles,创建完以后,如下图:
接下来我们创建他们之间的管理,TUsers与TUsersRoles是一对多的管理,TRoles与TUsersRoles也是一对多的关系,选中TUsers,点击右键,选择”新增->关联”,如下图:
选择好合适的关系,如下图:
设置好以后,点击确定,如下图:
然后设置TRoles与TUsersRoles的关系,设置好以后,如下图:
然后依据模型生成数据库,我们先在数据库中创建一个名称为RightSystemDb的空白数据库,在模型设计视图空白处选择“根据模型生成到数据库…”:
如下图。
点击”新建连接”,如下图,设置好以后,点击确定
点击下一步,选择实体框架5.0。如下图:
点击下一步,显示“生产数据库”向导,如下图:
点击完成,如下图:
可以查看创建数据库的SQL预计,在空白处右键点击,选择“生产”,创建数据库表完成,
接下来就是对数据的增删改查了,代码如下:
class Program { static void Main(string[] args) { MyModelFirstContainer modelfirstContext = new MyModelFirstContainer(); TUsers user = new TUsers(); user.Account = "admin"; user.Password = "111111"; user.CreateDate = DateTime.Now; modelfirstContext.TUsersSet.Attach(user); modelfirstContext.Entry(user).State = System.Data.EntityState.Added; modelfirstContext.SaveChanges(); //LINQ查询 var userlist = from u in modelfirstContext.TUsersSet select u; foreach(var u in userlist){ Console.WriteLine(string.Format("账号:{0} 密码:{1}", u.Account, u.Password)); } //Lambda var ulist = modelfirstContext.TUsersSet.Where<TUsers>(u => u.Id > 0).ToList(); foreach(var u in ulist) { Console.WriteLine(string.Format("账号:{0} 密码:{1}", u.Account, u.Password)); } //一直使用Lambda查询,至今没有明白为什么有了LINQ还要有lambda,难道仅仅是让大家多一种写法吗,他们之间的区别是什么,仅仅是写法不同吗 //谁知道的话可以留个言,告诉我一下 } }
- EF之Model First模型优先
- Model First(模型优先)
- EF之Database First数据库优先
- EF之Code First代码优先
- C# ORM—Entity Framework 之Database first(数据库优先)&Model First(模型优先)(一)
- ORM系列之二:EF(4) Model First
- EF框架—Model-First
- EF三种编程方式详细图文教程(C#+EF)之Model First
- EF三种编程方式详细图文教程(C#+EF)之Model First
- 关于EF中的模型优先
- EF中数据优先,模型优先和代码优先
- Generating EF Code First model classes from an existing database
- EF框架step by step(2)—Model-First
- EF 4.1 Code First Walkthrough(EF 4.1代码优先演练)
- EF 4.1 Code First Walkthrough(EF 4.1代码优先演练)
- Entity Framework之Model First生成模式
- Model First
- model-view模型之QDirModel
- Redis java调用API
- Ubuntu expect使用经验
- 百度地图申请密钥Android SDK
- 窗口有闪烁标题
- Linux开发板下自动开机时启动应用程序
- EF之Model First模型优先
- myeclipse 10创建的包变成文件夹后怎么转回 转载连接http://blog.sina.com.cn/s/blog_656067140102uy04.html
- 微信小程序的组件用法与传统HTML5标签的区别
- Hdu4405
- python访问redis
- 两个表不能连接查询需要把数据放在一起
- java终止线程的三种方法
- Android校招面试 —— Java篇
- 面试题24. 二叉搜索树的后序遍历序列