关于使用EF的问题

来源:3-4 【理解】什么是Entity Framework

菠萝吹雪gz

2020-09-09

一般在使用EF时,有常见的三种模式:DB Frist (极其不推荐)、 Model First 、Code First 以前我们多人开发时 使用 Model First 很不方便 尤其是在 版本控制时,很容易冲突,使用 Model First,一路 点 下去 很爽,但是生成的sql语句 性能确很差,在我们的电商系统中,现在都不使用 EF 了,换成了Dapper (我不是EF 高手,不会用,还请老师多多指点),及时 使用 EF 建议 使用Code First , 我在.net core 中还没使用 Code First 模式 ,老师可以指点下 Code First 模式怎么用,谢谢老师。明天是 教师节了 提前祝老师 教师节快乐!

写回答

1回答

阿莱克斯刘

2020-09-10

  1. 其实DB Frist也没那么差,我之前的公司一直都在用DB First,而且还专门有个DBA去维护数据库。而使用Model First的版本控制的问题,你说的是把模型存储在xml文件这种方式吗?那确实挺痛苦的。

  2. ef的性能的确会存在问题,因为它也要通过link-to-sql来实现,要通过反射机制形成sql,而且sql写的还不一定好。但毕竟使用EF的一个好处就是系统便于维护,减小了系统开发时间,减少了生成成本。鱼与熊掌不可兼得嘛。Java开发实际上也存在同样的问题,所以很多人也选择不使用hibernate而选择mybatis

  3. 最后,关于Code First,我找到几个例子,你可以参考一下,讲得都非常清楚。

  • 官方文档:https://docs.microsoft.com/zh-cn/ef/ef6/modeling/code-first/workflows/new-database

  • 半官方文档(英语):https://www.entityframeworktutorial.net/code-first/simple-code-first-example.aspx

2
0

.Net 开发电商后端API 从0到精通RESTful

. Net 实战+RESTful思想纵深课程,开发优雅RESTful风格API。

977 学习 · 547 问题

查看课程