为什么要使用Entity Framework
生活随笔
收集整理的這篇文章主要介紹了
为什么要使用Entity Framework
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
本文介紹從DDD(Domain-Driven Design[領域驅動設計])的角度來說說為什么要使用Entity Framework(以下都會簡稱為EF),同時也看出類似Drapper之類的簡陋ORM不足的地方。
設想業務都是大家知曉的權限管理,實體類如下。
讀到這里,請先思考一下,給一個?User?添加一個新的?Role?,你會怎么寫代碼?,然后再接下去看看DDD認為應該怎么寫。
接下來,我們來看看怎么調用,可以看出一切都是圍繞User這個領域模型的。
var user = userService.GetUserById(userId); user.AddRole(role);//可以看出用了領域模型后,代碼更加OOP了~userService.Update(user);更加理想的DDD,是連userService都不要,但目前很難實現這種做法。
var user = User.Init(userId); user.AddRole(role); user.SaveChange()理想很豐滿,現實很骨感,除了技術不能完全實現DDD的思想,我們還要考慮性能問題,
所以目前的DDD的做法是推薦搜索功能,也就是說搜索出現的數據作展示用,不會再對搜索出來的數據進行增刪改,那么就怎么快怎么來。你愛用Drapper也行,用EF+原生Sql也行,用Ado.Net也行。
不是說面向過程化的思想不行,能抓老鼠的就是好貓。
但前輩們的經驗是,面對復雜的業務,用DDD的思想來解決會更好。
所以
今天你OOP,DDD了嗎?^_^
原文地址:?https://www.cnblogs.com/weixb/p/9640089.html
.NET社區新聞,深度好文,歡迎訪問公眾號文章匯總 http://www.csharpkit.com
總結
以上是生活随笔為你收集整理的为什么要使用Entity Framework的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: .NET Core中的CSV解析库
- 下一篇: 如何在你的项目中集成 CAP【手把手视频