EF的三种搭建模式

前言

   小编在上篇文章EF之宏观把控+框架解析中提到了EF是一种ORM框架,主要用于对象关系映射和数据持久化。EF的搭建一共分为三种,分别是database first,model first,code first三种,那他们三种的区别和各自的优缺点是什么呢?下面请小编细细道来。


Database First

  Database First就是根据已有的数据库,然后在vs中添加ADO.Net实体数据模型,设置连接并且选择需要的数据库和表。它是以数据库设计为基础的,并根据数据库自动生成实体数据模型,从而驱动整个开发流程。除生成实体模型和自跟踪实现模型,还支持生成轻型DbContext。

  优点:Database First可以自动深处生成上下文DBcontext,使用简单,容易上手,适合于需要快速开发的项目。

  缺点:这种方式明显性能较差。同样,强大的微软也提供了一种解决方案,就是从数据库更新实体,详情请点击这篇博客EF映射——从数据库更新实体


Model First

  Model First是先利用某些工具(如VS的EF设计器)设计出可视化的实体数据模型及他们之间的关系,然后再根据这些实体、关系去生成数据库对象及相关代码文件。

  优点:开发人员可以再模型设计完成之后,利用vs等工具快速生成数据库脚本。

  缺点:设计模型时完全了解数据库的结构,在模型中手动添加表关系,并且生成的脚本有点不简洁。  


Code First

  Code First是根据已经写出的代码,如实体对象,数据关系等,然后根据已有的代码描述,自动创建数据对象。但其实这种方法与Model First是非常类似的。我们自己写的代码,其实就是用代码表示实体模型,而Model First是用可视化的方式描述了实体模型。

  优点:性能比较好,且代码较少冗余。

  缺点:全部都是代码编写,对程序员的要求较高。


总结

   小白上手,还是 Database First这种方式比较适合。具体的搭建过程,详情请点击EF搭建

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 19
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 19
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值