[Dapper] 取得多筆查詢結果 QueryMultiple

近日在重構一些舊專案的時候遇到了一支預存程序,會有多筆回傳結果,平時都只一筆一筆取,一時間還真不知道怎麼處理,再網上查了資料後發現用QueryMultiple()取得GridReader後,有幾個結果就Read()幾次即可。

範例:

*假設今日有一個StoredProcedure [TestStoredProcedure] 有兩個result

*實作取得結果

ps:Read<string>()的string可以改成想要轉換的Model

   using (var conn = new SqlConnection(_connectString))
            {
                var sql = "exec [TestStoredProcedure] @id";
                var param = new { id = "TEST" };
                var reader = conn.QueryMultiple(sql, param);
                var result1 = reader.Read();//結果1
                var result2 = reader.Read();//決果2

            }

留言

這個網誌中的熱門文章

[Visual Studio]位於網際網路或是限制區域上 或是檔案上標有 web 字樣 所以無法處理該檔案。若希望處理這些檔案 請移除 web 字樣。

[IIS] IIS執行時,發生拒絕存取路徑 問題

[SourceTree]修改使用者帳號密碼