码迷,mamicode.com
首页 > 数据库 > 详细

ef-codefirst方式配置实体类,生成数据库

时间:2018-06-10 11:41:01      阅读:395      评论:0      收藏:0      [点我收藏+]

标签:required   contex   建立   技术   entity   构造函数   config   string   with   

做项目的时候,如果我们如果用orm方式来做数据库持久化操作的话.微软官方首先会向我们推荐ef,而我们用ado.net的话,似乎也需要建立实体类来接传值,那么我们用codefirst就有一举两得的效果了

1.在对应的项目安装ef

2.创建实体类

技术分享图片

3.接下来需要配置字段的属性,也就是长度,类型之类的,那么string类型一般对应数据库中的nvarchar类型,还有要建立实体类之间的对应关系,就是配置导航属性,这里有注解式和fluent Api两种方式来配置,我建议用fluent Api的方式来配置,因为他会比较直观,

一对多的情况下,我们可以在多的一端配置导航属性,并且建议只在一端配置导航属性,双向的绑定你还要配置更多的信息与它对应,岂不是画蛇添足,如下配置

技术分享图片

建立实体类对应的实体类+config文件,让他继承EntityTypeConfiguration,之后在构造函数中配置相关信息

totable是配置在数据库中生成的表的名称

hasrequired是否是必填字段,hasoption是可以为空,这里配置的是日志文件的纪录必须包含一个用户对象AdminUser,并用HasForeignKey指定了外键的名称AdminUserId,withmany()是对应主表的也就是AdminUser来说的,他有多个AdminLog

WillCascadeOnDelete是取消级联删除的策略,

技术分享图片这句话就是正常配置字段的可空性.

技术分享图片配置字段的长度

4.创建DbContext文件

技术分享图片

技术分享图片指定了数据库连接字符串

技术分享图片在数据库生成的时候加入fluent Api配置

技术分享图片把实体类加入到数据库

5.创建控制台项目,或是asp.net 项目生成数据库,

技术分享图片

 

ef-codefirst方式配置实体类,生成数据库

标签:required   contex   建立   技术   entity   构造函数   config   string   with   

原文地址:https://www.cnblogs.com/Spinoza/p/9162158.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!