Dapper-Plus BulkInsert - 如何返回受影响的行数?

问题描述 投票:0回答:1

Dapper-Plus中,有没有办法返回数据库中受影响的行数?这是我的代码:

using (SqlConnection connection = new SqlConnection(Environment.GetEnvironmentVariable("sqldb_connection")))
{
    connection.BulkInsert(myList);
}

我发现您可以插入单行,但在短小精悍的批量插入上找不到功能。

bulkinsert dapper-plus
1个回答
1
投票

由于 Dapper Plus 允许链接多个方法,因此该方法不会直接返回该值。

但是,您可以使用以下代码来完成:

var resultInfo = new Z.BulkOperations.ResultInfo();

connection.UseBulkOptions(options => {
    options.UseRowsAffected = true;
    options.ResultInfo = resultInfo;
}).BulkInsert(orders);

// Show RowsAffected
Console.WriteLine("Rows Inserted: " + resultInfo.RowsAffectedInserted);
Console.WriteLine("Rows Affected: " + resultInfo.RowsAffected);

小提琴:https://dotnetfiddle.net/mOMNng

请记住,使用该选项会使批量操作稍微变慢。

编辑:回答评论

它会使其像使用常规的简洁插入方法一样慢还是这种方法仍然更快?

它仍然比普通的快得多

Insert

© www.soinside.com 2019 - 2024. All rights reserved.