1. 程式人生 > >SmartSql 常見OA信用盤原始碼修復問題

SmartSql 常見OA信用盤原始碼修復問題

常見問題OA信用盤原始碼修復QQ2952777280【話仙原始碼論壇】hxforum.com 為什麼不支援 Linq? SmartSql 希望 開發人員更多的接觸 Sql ,獲得絕對的控制權與安全感。所以目前沒有計劃支援 Code First 程式設計模式。

我想好了Sql怎麼寫,然後再來寫Linq,完了可能還要再檢視一下Linq輸出的Sql是什麼樣的,這真是糟糕的體驗。要想對Sql做絕對的優化,那麼開發者必須對Sql有絕對的控制權。另外Sql本身很簡單,為何要增加一層翻譯器呢?

Codefirst 一個美好,卻不切實際的想法。

對SmartSql很感興趣,不知從何開始? 請閱讀示例專案:https:// github .com/Ahoo-Wang/SmartSql-Starter

SmartSql支援哪些資料庫? 只要是實現了ADO.NET的資料庫驅動的資料庫均支援,您只需要安裝好對應的驅動即可。

SmartSql是否支援多資料庫? 支援,可以通過配置引入多個數據庫例項:

var sqlServerMapper = MapperContainer.Instance.GetSqlMapper(“SmartSqlMapConfig-SqlServer.xml”); var mySqlMapepr = MapperContainer.Instance.GetSqlMapper(“SmartSqlMapConfig-MySql.xml”); SmartSql效能如何? SmartSql的效能與Dapper是儲存同一級別的≈原生手寫(另外多個其他ORM在自己的測試報告中寫明比Dapper效能還高,請同學們保持好奇),文件中的 SmartSql 效能對比測試報告是開放了原始碼的,任何對於效能感興趣的同學均可以clone原始碼自己跑一遍效能測試。自己Run的效能測試才是真的測試!

SmartSql可用性如何? SmartSql 已歷經1年多的線上數十個微服務場景驗證,其效能、可用性、生產力是得到驗證的。另外SmartSql已入選微軟官方推薦的awesome(https:// github .com/quozd/awesome-dotnet#orm)。

對於簡單CURD配置 作者還開源了一個程式碼生成器專案:SmartCode: https:// github .com/Ahoo-Wang/SmartCode ,可以使用SmartCode生成解決方案,包括所有CURD操作的XML/Entity/IRepository!

為什麼選擇Xml作為配置語法 Xml 的標籤語法用起來會比較靈活. 比如 篩選標籤,巢狀複用,可讀性. 複雜查詢場景用起來會非常舒爽,可讀性也會比較好,程式碼層面不需要做任何處理,全部交給Xml .

叢集場景如何使用獲得快取一致性 SmartSql提供了Redis快取外掛,可通過NuGet安裝:

Install-Package SmartSql.Cache.Redis 叢集場景中Sql配置很多Copy怎麼辦 SmartSql 提供了 ZooKeeper配置外掛,通過NuGet安裝:

Install-Package SmartSql.ZooKeeperConfig 另外作者還開源了ZooKeeper節點管理工具:ZooKeeper-Admin,可直接通過該管理工具直接配置. 關於ZooKeeper-Admin: 使用 Asp .net Core 編寫 Docker安裝: docker pull ahoowang/zookeeper.admin docker run --name zooAdmin -p 80:80 ahoowang/zookeeper.admin 本地安裝 git clone https:// github .com/Ahoo-Wang/ZooKeeper-Admin .git dotnet run 我之前使用過MyBatis,感覺SmartSql有種似曾相識的感覺 是的,SmartSql程式設計模型多處借鑑了MyBatis,如果你之前使用過MyBatis,那麼SmartSql將是你更好的選擇,因為你幾乎不需要有任何程式設計方式的轉變就可以直接上手,並且擁有跨平臺,高效能,以及眾多你外掛的支援.