永发信息网

dbfirst和codefirst有什么区别

答案:1  悬赏:0  手机版
解决时间 2021-11-28 06:38
dbfirst和codefirst有什么区别
最佳答案
先分别介绍一下三种方法的联系:
1.Database First是基于已存在的数据库,利用某些工具(如VS提供的EF设计器)创建实体类,数据库对象与实体类的匹配关系等,你也可以手动修改这些自动生成的代码及匹配文件。也就是从一个数据库开始,然后生成实体框架和相应代码。
2.Model First 是先利用某些工具(如VS的EF设计器)设计出可视化的实体数据模型及他们之间的关系,然后再根据这些实体、关系去生成数据库对象及相关代码文件。
3.Code First 这种方式需要先写一些代码,如实体对象,数据关系等,然后根据已有的代码描述,自动创建数据对象。但其实这种方法与Model First是非常类似的。我们自己写的代码,其实就是用代码表示实体模型,而Model First是用可视化的方式描述了实体模型。

下面分析这三种方式的优缺点:
Database-First模式明显性能会差点,但是它很适合初学者,或者是比较急的小型项目。还有一点,我们在做项目时可能不容易体会到它的好处,但如果做数据库结构比较成熟稳定的产品时,我们可以很轻松的使用数据库生成实体模型,从而实现快速开发。
Model-First模式优点是开发人员能够在模型设计完成后,可以利用VS等工具快速生成数据库脚本。缺点是设计模型时完全了解数据库的结构,在模型中手动添加表关系,并且生成的脚本有点不简洁。
Code-First模式优点是性能比较好,且代码较少冗余。不过它的缺点也有很多,由于都是代码编写的,比如更新数据库。

这三种方式各有利弊,使用过程中我们要按实际需求来选择。这些工具的出现和使用,大大提高了开发人员的开发速度,使得数据库、模型等出现了复用、扩展的可能,在应对变化方面也做了足够的工作。这些工具所体现的服务思想更提醒我们要全方位去考虑问题,在产品中做好应对变化的措施。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
QQ号是优酷会员,现在登陆要绑定手机,绑定了
大唐帝国万邦来朝的背后:唐朝靠什么万邦来朝
flash 的场景怎样复制
书法中横画怎么写
《国境线》经典语录
如何更改默认的打开方式?一次不小心把文件的
对于我国“80后”出生、如今踏入社会准备就业
分段招标的含义?、、
雷风恒变火风鼎卦,求财,有好心大师帮我解一
辅导班未上的课课时费不退找谁?
从贾嗣镇坐车到沙坪坝怎样坐车l硬方便
汪峰不是说万妮达的编曲很高级吗
江门社阮有什么地方好玩
初二 女生 600米测试2分22秒,下周测800米,中
单选题Whichofthefollowingisright?A.He
推荐资讯
ppt的饼状的方向怎样调整?
全焊接结构锅炉指的是?
唐老大儿子名字叫什么
多少父母会放下架子与子女沟通的数据
怎么创建Excel格式文件S下划线EXCEL.xls
济南奥龙官邸小区属于什么路,坐几路公交车能
根据下面的描述画3路公交车行驶路线.3路公交
画lolita的柄图的手稿后应该用什么软件?
谁知道鞋模的术语?
我的原装电动车充电器是130W,后买的充电器是
有两个灯泡L1和L2,L1上标有“12V36W”,L2上
能表现岳飞忠诚的事迹
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?