欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

輕量級ORM框架Dapper應(yīng)用之Dapper支持存儲(chǔ)過程

 更新時(shí)間:2022年03月07日 08:53:13   作者:.NET開發(fā)菜鳥  
這篇文章介紹了Dapper支持使用存儲(chǔ)過程的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

在Entity Framework中講解了EF如何支持存儲(chǔ)過程,同樣,Dapper也支持存儲(chǔ)過程,只需要在Query()方法的CommandType中標(biāo)記使用的是存儲(chǔ)過程就可以了。在Users表上面創(chuàng)建如下的存儲(chǔ)過程:

CREATE proc sp_GetUserByUserName
@UserName varchar(16)
as
begin
select * FROM Users WHERE UserName=@UserName
end
GO

調(diào)用存儲(chǔ)過程的代碼如下:

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

namespace DapperApplicationProcedure
{
    class Program
    {
        static void Main(string[] args)
        {
            // 連接字符串
            string conn = ConfigurationManager.ConnectionStrings["AppConnection"].ConnectionString;
            using (IDbConnection connection = new SqlConnection(conn))
            {
                var query = connection.Query<User>("sp_GetUserByUserName", new { UserName = "風(fēng)清揚(yáng)" }, commandType: CommandType.StoredProcedure);
                // 輸出
                query.AsList().ForEach(p =>
                {
                    Console.WriteLine("姓名:"+p.UserName+",郵箱:"+p.Email+",地址:"+p.Address);
                });
            }

            Console.ReadKey();
        }
    }
}

運(yùn)行過程:

注意:例子中只演示了使用一個(gè)參數(shù)的存儲(chǔ)過程,如果有多個(gè)參數(shù)使用方法也一樣。 

示例代碼下載地址:點(diǎn)此下載

使用Execute執(zhí)行帶輸出參數(shù)的存儲(chǔ)過程

創(chuàng)建存儲(chǔ)過程如下:

CREATE proc procWithOutPara
@num1 int,
@num2 int,
@sum int output
as
begin
  set @sum=@num1+@num2
end
GO

dapper調(diào)用存儲(chǔ)過程代碼如下:

// 動(dòng)態(tài)類型參數(shù)
DynamicParameters paras = new DynamicParameters();
paras.Add("@num1", 23);
paras.Add("@num2", 45);
paras.Add("@sum", 0, DbType.Int32, ParameterDirection.Output);// 指明是輸出參數(shù),這里為指明參數(shù)類型大小
// 執(zhí)行存儲(chǔ)過程
dbConnection.Execute("procWithOutPara", paras, commandType: CommandType.StoredProcedure);
// 獲取輸出參數(shù)的值
int sum = paras.Get<int>("@sum");//68

到此這篇關(guān)于Dapper支持存儲(chǔ)過程的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論