亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

輕量級ORM框架Dapper應用怎么返回多個結果集

發布時間:2022-03-07 09:15:40 來源:億速云 閱讀:246 作者:iii 欄目:開發技術

這篇“輕量級ORM框架Dapper應用怎么返回多個結果集”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“輕量級ORM框架Dapper應用怎么返回多個結果集”文章吧。

使用Dapper的QueryMultiple方法可以一次執行多條SQL語句,返回多個結果集,代碼如下

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Configuration;
using Dapper;
using System.Data;
using System.Data.SqlClient;
using DapperAppQueryMultiple.Model;

namespace DapperAppQueryMultiple
{
    class Program
    {
        static void Main(string[] args)
        {
            // 定義連接字符串
            string conn = ConfigurationManager.ConnectionStrings["AppConnection"].ConnectionString;
            using (IDbConnection connection = new SqlConnection(conn))
            {
                var sql = @"SELECT * FROM Users WHERE UserId=@UserId;
                            SELECT * FROM Product WHERE ProductId=@ProductId";
                var queryMulti = connection.QueryMultiple(sql, new { UserId = 1, ProductId=3 });

                // 注意:Read獲取的時候必須是按照上面返回表的順序 比如上面先查詢的Users表,那么Read的時候必須先返回Users表,否則返回沒有數據
                var users = queryMulti.Read<User>();
                var products = queryMulti.Read<Product>();
                Console.WriteLine("*****產品信息*****");
                // 循環遍歷輸出
                products.AsList<Product>().ForEach(p =>
                {
                    Console.WriteLine("產品名稱:"+p.ProductName+" 價格:"+p.Price);
                });
                Console.WriteLine("*****產品信息*****");

                Console.WriteLine("*****用戶信息*****");
                users.AsList<User>().ForEach(p => {
                    Console.WriteLine("用戶姓名:"+p.UserName+" 郵箱:"+p.Email+" 地址:"+p.Address);
                });
                Console.WriteLine("*****用戶信息*****");
            }


            Console.ReadKey();

        }
    }
}

程序運行結果:

輕量級ORM框架Dapper應用怎么返回多個結果集

注意:Read獲取的時候必須是按照上面返回表的順序 比如上面先查詢的Users表,那么Read的時候必須先返回Users表,否則返回沒有數據。Read<T>里面的T泛型類不一定要和數據庫表名相同,上面代碼的T泛型類是User,數據庫表名是Users。

下面的代碼演示返回順序不同:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Configuration;
using Dapper;
using System.Data;
using System.Data.SqlClient;
using DapperAppQueryMultiple.Model;

namespace DapperAppQueryMultiple
{
    class Program
    {
        static void Main(string[] args)
        {
            // 定義連接字符串
            string conn = ConfigurationManager.ConnectionStrings["AppConnection"].ConnectionString;
            using (IDbConnection connection = new SqlConnection(conn))
            {
                var sql = @"SELECT * FROM Users WHERE UserId=@UserId;
                            SELECT * FROM Product WHERE ProductId=@ProductId";
                var queryMulti = connection.QueryMultiple(sql, new { UserId = 1, ProductId=3 });

                // 先返回Product表的查詢數據
                var products = queryMulti.Read<Product>();
                var users = queryMulti.Read<User>();

                Console.WriteLine("*****產品信息*****");
                // 循環遍歷輸出
                products.AsList<Product>().ForEach(p =>
                {
                    Console.WriteLine("產品名稱:"+p.ProductName+" 價格:"+p.Price);
                });
                Console.WriteLine("*****產品信息*****");

                Console.WriteLine("*****用戶信息*****");
                users.AsList<User>().ForEach(p => {
                    Console.WriteLine("用戶姓名:"+p.UserName+" 郵箱:"+p.Email+" 地址:"+p.Address);
                });
                Console.WriteLine("*****用戶信息*****");
            }


            Console.ReadKey();

        }
    }
}

上面的代碼只是修改了返回表的數據,程序運行結果如下:

輕量級ORM框架Dapper應用怎么返回多個結果集

以上就是關于“輕量級ORM框架Dapper應用怎么返回多個結果集”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

前郭尔| 武宁县| 汤阴县| 靖宇县| 长春市| 延边| 乐昌市| 四平市| 淳化县| 枝江市| 搜索| 济宁市| 正蓝旗| 青川县| 沧州市| 东山县| 靖边县| 疏勒县| 辽阳县| 武夷山市| 若羌县| 卫辉市| 德保县| 修文县| 长沙县| 京山县| 石狮市| 霍林郭勒市| 保德县| 喜德县| 青阳县| 突泉县| 荆门市| 论坛| 宾阳县| 长岭县| 彭水| 江陵县| 东方市| 来安县| 贵港市|