第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

Dapper - 將 int 列表傳遞給存儲(chǔ)過(guò)程

Dapper - 將 int 列表傳遞給存儲(chǔ)過(guò)程

C#
九州編程 2023-07-22 16:44:33
我的存儲(chǔ)過(guò)程SQL語(yǔ)句非常簡(jiǎn)單。Delete From TableName where ID IN (@id)我想從 C# 代碼傳遞列表或數(shù)組,并希望返回已刪除的行數(shù)。下面是我的代碼,不知怎的,我不相信并認(rèn)為這不是正確的方法。這樣做的有效方法是什么?using (SqlConnection connection = new SqlConnection(_connectionString)){    await connection.OpenAsync();    DynamicParameters parameters = new DynamicParameters();    foreach (var id in ids)    {        parameters.Add("@Id", id, DbType.Int32, ParameterDirection.Input);        await connection.ExecuteAsync(            ProcedureNames.DeleteRules,            parameters,            commandType: CommandType.StoredProcedure);    }}
查看完整描述

1 回答

?
慕標(biāo)琳琳

TA貢獻(xiàn)1830條經(jīng)驗(yàn) 獲得超9個(gè)贊

創(chuàng)建一個(gè)模型以將 id 存儲(chǔ)在參數(shù)中。要獲取受影響的行,請(qǐng)獲取執(zhí)行調(diào)用的結(jié)果。


using (SqlConnection connection = new SqlConnection(_connectionString)) {

    await connection.OpenAsync();


    var affectedRows = await connection.ExecuteAsync(

            ProcedureNames.DeleteRules,

            new { id = ids.ToArray() }, //<-- Passing collection

            commandType: CommandType.StoredProcedure);

}

另一種方法


using (SqlConnection connection = new SqlConnection(_connectionString)) {

    await connection.OpenAsync();


    var affectedRows = await connection.ExecuteAsync(

            ProcedureNames.DeleteRules,

            ids.Select(id => new { id = id }).ToArray(), //<-- Passing collection

            commandType: CommandType.StoredProcedure);

}

會(huì)多次執(zhí)行該語(yǔ)句。對(duì)于數(shù)組列表中的每個(gè)對(duì)象一次。它仍然會(huì)為您提供執(zhí)行所有語(yǔ)句的受影響的總行數(shù)。


查看完整回答
反對(duì) 回復(fù) 2023-07-22
  • 1 回答
  • 0 關(guān)注
  • 191 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)