<address id="xpjh9"><listing id="xpjh9"><meter id="xpjh9"></meter></listing></address>

<address id="xpjh9"><address id="xpjh9"><listing id="xpjh9"></listing></address></address>
<noframes id="xpjh9">
<noframes id="xpjh9">

<address id="xpjh9"><address id="xpjh9"><listing id="xpjh9"></listing></address></address>
    <form id="xpjh9"></form><address id="xpjh9"><listing id="xpjh9"><menuitem id="xpjh9"></menuitem></listing></address>

      <noframes id="xpjh9">
      VB.net 2010 視頻教程 VB.net 2010 視頻教程 VB.net 2010 視頻教程
      SQL Server 2008 視頻教程 c#入門經典教程 Visual Basic從門到精通視頻教程
      當前位置:
      首頁 > 編程開發 > c#教程 >
      • C#教程之SmartSql 介紹

      • 2019-04-13 21:19 來源:未知

      介紹

      SmartSql = MyBatis + Cache(Memory | Redis) + R/W Splitting +Dynamic Repository + Diagnostics ......

      她是如何工作的?

      SmartSql 借鑒了MyBatis的思想,使用XML來管理SQL,并且提供了若干個篩選器標簽來消除代碼層面的各種if/else的判斷分支。

      SmartSql將管理你的SQL,并且通過篩選標簽來維護本來你在代碼層面的各種條件判斷,使你的代碼更加優美。

      同時SmartSql還提供了以下各種特性(包括但不限于):

      • 動態代理倉儲
      • 分布式緩存
      • 類型處理器
      • 自動生成 CUD 代碼
      • Id生成器
      • 性能診斷
      • AOP 級別的事物
      • 緩存(內存,分布式緩存)
      • 讀寫分離
      • 代碼生成器(https://github.com/dotnetcore/SmartCode)
      • 高性能的批量插入

      為什么選擇SmartSql?

      DotNet 體系下大都是Linq系的ORM,Linq很好,消除了開發人員對SQL的依賴。但卻忽視了一點,SQL本身并不復雜,而且在復雜查詢場景當中開發人員很難通過編寫Linq來生成良好性能的SQL,相信使用過EF的同學一定有這樣的體驗:“我想好了Sql怎么寫,然后再來寫Linq,完了可能還要再查看一下Linq輸出的Sql是什么樣的“。這是非常糟糕的體驗。要想對Sql做絕對的優化,那么開發者必須對Sql有絕對的控制權。另外Sql本身很簡單,為何要增加一層翻譯器呢?

      那么為什么不是Dapper,或者DbHelper?

      Dapper 確實很好,并且又很好的性能,但是會讓給你的代碼里邊充斥著SQL和各種判斷分支,這些將會使代碼維護難以閱讀和維護。另外 Dapper 只提供了DataReader到Entity的反序列化功能。而SmartSql提供了大量的特性來提升開發者的效率。

      Nuget Packages

      Package NuGet Stable Downloads
      SmartSql SmartSql SmartSql
      SmartSql.Schema SmartSql.Schema SmartSql.Schema
      SmartSql.TypeHandler SmartSql.TypeHandler SmartSql.TypeHandler
      SmartSql.DyRepository SmartSql.DyRepository SmartSql.DyRepository
      SmartSql.DIExtension SmartSql.DIExtension SmartSql.DIExtension
      SmartSql.Cache.Redis SmartSql.Cache.Redis SmartSql.Cache.Redis
      SmartSql.ScriptTag SmartSql.ScriptTag SmartSql.ScriptTag
      SmartSql.AOP SmartSql.AOP SmartSql.AOP
      SmartSql.Options SmartSql.Options SmartSql.Options
      SmartSql.Bulk SmartSql.Bulk SmartSql.Bulk
      SmartSql.Bulk.SqlServer SmartSql.Bulk.SqlServer SmartSql.Bulk.SqlServer
      SmartSql.Bulk.PostgreSql SmartSql.Bulk.PostgreSql SmartSql.Bulk.PostgreSql
      SmartSql.Bulk.MySql SmartSql.Bulk.MySql SmartSql.Bulk.MySql

      作者:Ahoo Wang (阿虎)

      Github: https://github.com/Ahoo-Wang/

      SmartSql(高性能、高生產力,超輕量級的ORM!): https://github.com/Ahoo-Wang/SmartSql

      SmartCode(不只是代碼生成器!): https://github.com/dotnetcore/SmartCode


      本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。


      相關教程
      江苏快3 铜仁 | 泰兴 | 辽阳 | 阿拉尔 | 衡水 | 郴州 | 改则 | 东莞 | 乌海 | 宿迁 | 广汉 | 嘉兴 | 姜堰 | 澄迈 | 昆山 | 临猗 | 赤峰 | 鹤壁 | 丹阳 | 鹤岗 | 阿拉善盟 | 湘潭 | 晋城 | 海拉尔 | 衡阳 | 肥城 | 平潭 | 汕尾 | 汕尾 | 岳阳 | 梧州 | 呼伦贝尔 | 海安 | 广州 | 赤峰 | 和田 | 乌海 | 济南 | 淮北 | 保定 | 阳春 | 乐清 | 惠东 | 遵义 | 玉林 | 山南 | 张家界 | 白银 | 红河 | 铜陵 | 惠东 | 南充 | 库尔勒 | 泉州 | 惠东 | 五家渠 | 天长 | 三亚 | 洛阳 | 惠东 | 江西南昌 | 泰安 | 台山 | 云南昆明 | 通辽 | 鞍山 | 萍乡 | 商丘 | 宁波 | 澄迈 | 临汾 | 甘南 | 忻州 | 铁岭 | 淮北 | 马鞍山 | 琼中 | 黔东南 | 兴安盟 | 庄河 | 曲靖 | 五指山 | 哈密 | 宁波 | 高雄 | 芜湖 | 山南 | 中卫 | 灌南 | 台南 | 衢州 | 三门峡 | 桐城 | 临夏 | 诸城 | 宝应县 | 滨州 | 驻马店 | 舟山 | 海西 | 延边 | 攀枝花 | 衡阳 | 桂林 | 平顶山 | 内江 | 五家渠 | 泗阳 | 哈密 | 鄂州 | 招远 | 安岳 | 台北 |