iT邦幫忙

dapper相關文章
共有 14 則文章

達標好文 技術 [C#][ASP.NET] Web API 開發心得 (6) - 輕量級的 ORM 工具 Dapper + Slapper.AutoMapper

寫了這麼多篇終於要進入資料庫的部分,今天要和大家分享的是輕量級 ORM 框架 Dapper,自己從最開始的 ADO.NET 配合 DataTable 到後來流行...

達標好文 技術 【C#、Dapper】 小技巧、研究 #1 : QueryFirstOrDefault

最近在研究Dapper Source Code想要抽離一些部分封裝自己想要的SQLHelper 做一些簡單筆記整理分享給版友,假如有不足的地方也期待版友留言、...

技術 小優化Dapper POCO類別生成器 (自動以表格名稱當類別名稱)

原版本是作者Necroskillz寫的POCO生成器 Generate C# POCOs from SQL statement in LINQPad | Nec...

鐵人賽 Software Development DAY 3

技術 【深入Dapper.NET源碼】Dynamic Query 原理 Part2

有了前面簡單ExpandoObject Dynamic Query例子的概念後,接著進到底層來了解Dapper如何細節處理,為何要自訂義DynamicMeta...

鐵人賽 Software Development DAY 4

技術 【深入Dapper.NET源碼】 Strongly Typed Mapping 原理 Part1 : ADO.NET對比Dapper

接下來是Dapper關鍵功能 Strongly Typed Mapping,因為難度高,這邊會切分成多篇來解說。 第一篇先以ADO.NET DataReade...

鐵人賽 Software Development DAY 6

技術 【深入Dapper.NET源碼】Strongly Typed Mapping 原理 Part3 : 動態建立方法重要概念「結果反推程式碼」優化效率

接著使用Expression來解決Reflection版本問題,主要是利用Expression特性 : 「可以在Runtime時期動態建立方法」來解決問題。...

鐵人賽 Software Development DAY 9

技術 【深入Dapper.NET源碼】Strongly Typed Mapping 原理 Part6 : Emit版本

以下代碼是Emit版本,我把C#對應IL部分都寫在註解。 public static class DemoExtension { public static...

鐵人賽 Software Development DAY 10

技術 【深入Dapper.NET源碼】Dapper 效率快關鍵之一 : Cache 緩存原理

為何Dapper可以這麼快? 前面介紹到動態使用 Emit IL 建立 ADO.NET Mapping 方法,但單就這功能無法讓 Dapper 被稱為輕量OR...

鐵人賽 Software Development DAY 15

技術 【深入Dapper.NET源碼】QueryMultiple(多個結果)底層原理

使用方式例子 : using (var cn = Connection) { using (var gridReader = cn.QueryMult...

鐵人賽 Software Development DAY 13

技術 【深入Dapper.NET源碼】Query Multi Mapping 使用方式

接著講解Dapper Multi Mapping(多對應)實作跟底層邏輯,畢竟工作當中不可能都是一對一概念。 使用方式 : 需要自己編寫Mapping邏輯,...

鐵人賽 Software Development DAY 14

技術 【深入Dapper.NET源碼】Query Multi Mapping 底層原理

Multiple Mapping 底層原理 這邊先以一個簡單Demo帶讀者了解Dapper Multi Mapping 概念 按照泛型類別參數數量建立對應數...

鐵人賽 Software Development DAY 19

技術 【深入Dapper.NET源碼】 IN 多集合參數化底層原理

為何ADO.NET不支援IN 參數化,Dapper支援 ? 原理 判斷參數的屬性是否為IEnumerable類別子類別 假如是,以該參數名稱為主 + Par...

鐵人賽 Software Development DAY 18

技術 【深入Dapper.NET源碼】Parameter 參數化底層原理

接著進到Dapper的另一個關鍵功能 : 「Parameter 參數化」 主要邏輯 : GetCacheInfo檢查是否緩存內有動態方法 > 假如沒有緩...

鐵人賽 Software Development DAY 12

技術 【深入Dapper.NET源碼】Dapper SQL正確字串拼接方式 : Literal Replacement

假如遇到必要拼接SQL字串需求的情況下,舉例 : 有時候值使用字串拼接會比不使用參數化效率好,特別是該欄位值只會有幾種固定值。 這時候Dapper可以使用Li...