交易與精巧點網

c# dapper

我想在多個表上運行多個insert語句。我正在使用dapper.net。我沒有看到任何方法來處理與dapper.net的交易。

請分享您對如何使用dapper.net進行交易的想法。

一般承認的答案

這裡的代碼片段:

using System.Transactions;    
....    
using (var transactionScope = new TransactionScope())
{
    DoYourDapperWork();
    transactionScope.Complete();
}

請注意,您需要添加對System.Transactions程序集的引用,因為默認情況下不引用它。


熱門答案

我更喜歡通過直接從連接獲取事務來使用更直觀的方法:

// This called method will get a connection, and open it if it's not yet open.
using (var connection = GetOpenConnection())
using (var transaction = connection.BeginTransaction())
{
    connection.Execute(
        "INSERT INTO data(Foo, Bar) values (@Foo, @Bar);", listOf5000Items, transaction);
    transaction.Commit();
}


許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因