EF Core
一个越学越没信心的技术。
1、如果有专门的DBA,那么我只能用到Linq,Migration与我无缘。虽说不会sql语法也能用Linq,但对复杂查询的掌控度我更倾向于手写sql语句,用sql语句的缺点就是不同数据库语法不同,EF能兼容这些差异。另外,合法的Linq语法不一定能成功翻译成sql语句。
2、对于批量Update和Delete支持不好,一条sql语句能解决的问题,EF会在后台生成一批sql语句,处理的数据越多效率越低。(可以用Zack老师的插件,nuget上有,但违背微软的数据一致性原则,不知微软为什么没优化批量操作)
3、轻量级的dapper理论上是个SqlHelper,以后会不会向EF靠拢,做一个真正的ORM重量级框架?
4、学习成本高,对于流动性的的公司,别用。
一个越学越想试试的技术。
1、返回IQueryable不会立即执行sql,可以在结果上二次加工,同时保持代码清晰,相当于datareader。返回IEnumable可以加载到缓存中。提供了两种方式。
2、能优化sql语句,比一般人手写的效率都高。
3、支持输出日志,可以看到转换后的sql语句。
EFCore的终点是转换成ado.net与数据库交互。他让我们使用C#语法像操作对象一样操作数据。封装了交互的底层逻辑,使得不懂sql语句的人也能操作数据库。不适合控制欲强的人。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异