首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >衣冠楚楚。IDbConnection和IDbTransaction

衣冠楚楚。IDbConnection和IDbTransaction
EN

Stack Overflow用户
提问于 2012-03-24 06:32:38
回答 1查看 7.3K关注 0票数 4

我应该如何在Dapper中使用IDbConnection和IDbTransaction?

目前,我只使用IDbConnection。如下所示:

代码语言:javascript
复制
using (SqlConnection connection = new SqlConnection(connectionString)) 
{
    connection.Execute(@"insert Roles(Name) values (@name)", new { name = "Role" }); 
}

但有时我需要发送两个命令?我应该使用BeginTransationEndTransaction

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-03-24 06:55:56

是的,如果你需要两个单独的命令是原子的,并且一起失败,那么你应该使用事务。

代码语言:javascript
复制
using (new TransactionScope(TransactionScopeOption.Required)) 
{
    connection.Execute(...);
    connection.Execute(...);
}

或者,如果您想使用BeginTransaction并将其传入,您还可以这样做:

代码语言:javascript
复制
using (var transaction = connection.BeginTransaction()) 
{
    connection.Execute(sql1, params1, transaction);
    connection.Execute(sql2, params2, transaction);
}
票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9847329

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档