一,為什么選擇SqlSugar?
在.net core ORM框架中,能選擇的方案其實有很多,包括以下方案:
1,EF-Core
2,Dapper
3,FreeSql
4,SqlSugar
為什么最后選擇了Sqlsugar 呢? 一個個來說,
首先是:EF-core。
EF-core 一開始想法也是擔心性能問題,大概在7年前 有嘗試過一次EF,深深被EF的性能所折服
實在是太慢了,當然做一些小型項目,EF當然是體現不出性能差距的,但是誰又知道自己的“小項目”哪天不會隨着
業務的發展變成“大項目” 呢? 所以,一開始對EF 以及EF-Core 沒有好感,不過后來看了,EF-Core的官網介紹,
感觀上發生了很大的變化, 總的來說就是:EF 和 EF-Core 完全是兩個東西。
更准確的說是:.net Core 和 .net Famework 完全是兩個東西。 這么說吧, .net Core在性能上完全不慫 java,go,python,php
任何一種語言,再說.net 性能不好的,可以啪啪打臉了。
但是,我還是首先淘汰了,EF-Core。原因是,查百度各種ORM都拿EF-core 做性能測試,可以參考以下連接:
參考:https://www.cnblogs.com/kellynic/p/10557882.html
雖然,EF-Core 性能跟EF 不能同日而語,但是,網上黑EF-Core性能不好的,還是大把。
Dapper說:比其他ORM都快,尤其比EF-core快!
FreeSql說:比其他ORM都快,尤其比EF-core快!
SqlSugar說:比其他ORM都快,尤其比EF-core快!
難免讓人感覺,選什么都好,就是不能選EF-Core。所以第一淘汰EF-core, 但是我還是想說:EF-core真的不慢!
EF-Core 官網:https://docs.microsoft.com/zh-cn/ef/core/get-started/?tabs=netcore-cli
其次就是:Dapper
Dapper,可以說是輕量級ORM的王者,用戶群體也多,是我的第二選擇,但是也是第二個被淘汰的。
原因很簡單,官網打卡太慢了,而且英文網站查起來費勁。
哈哈,其實這根本算不得一個理由,但是要知道,其實我是第一次使用ORM框架,(以前開發框架是基於ADO.Net的純sql框架)
好吧,我算是老古董了,關於我的經歷可以看 目錄 中的前言有講,所以我需要一個可以快速上手,方便查詢的ORM。
所以,我淘汰了Dapper。
Dapper官網:https://dapper-tutorial.net/dapper
再來是:FreeSql
關於FreeSql,說來也巧。FreeSql的開發者跟我在一個.net 交流群里,陸陸續續都有聊過天,但是我不知道他是FreeSql的開發者,
准確來說,我一直不知道FreeSql 這個東西,當我在群里說在選擇一個ORM 開發框架的時候,他死命的推薦我用FreeSql, 人就是這樣
也死命推薦我用,我越是不想搞,所以先天的產生了逆反的心理狀態,我看了幾篇關於FreeSql 的的文章之后,其實感覺FreeSql還是非常不錯的,
另外,FreeSql 也將代碼捐獻給了 Core 中國 開源社區。
.net Core 開源中國社區:https://github.com/dotnetcore
我還是滿佩服他的,搞出這么大個東西,還要堅持維護,不過我還是淘汰FreeSql了。最終理由是,上手沒有Sqlsugar快。
不過FreeSql 是開源的,這個非常重要。
FreeSql官網:https://github.com/dotnetcore/FreeSql/
最后是:SqlSugar
按上面的先后順序,SqlSugar是我排最后的,反倒最后被我選用了,理由只有一個:足夠簡單。
當然,看我前面的淘汰理由,基本上毫無標准可言,全憑個人喜好。要知道,個人喜好就是唯一標准,對我來說
上手要快,開箱即用。Dapper ,EF-Core 其實都足夠簡單,尤其是EF-core,官方的文檔相當齊全,視頻更是講的非常細致
最后,發現視頻,文檔 那么多,上手不夠快呀,打卡SqlSugar是官網,上面一下就吸引我了,“一分鍾入門”,“兩分鍾深入”,“三分鍾高手”。
所以,最后就選定了SqlSugar。
SqlSugar官網:http://www.codeisbug.com/Doc/8
總結: 其實在性能上,都差不太多,不要老說EF-core慢 或者 哪個哪個快的,最關鍵是.net Core 快就行了。剩下的比拼就是個人對於上手的理解速度
以及代碼的書寫風格。這就是我最后選擇SqlSugar 的原因。 都不慢,都挺好。
下一篇, SqlSugar 的搭建。點擊 目錄 進行跳轉吧!