SqlConnection.Dispose()是否对所有挂起的事务执行回滚?

时间:2012-12-12 22:59:34

标签: .net sql-server ado.net

  

可能重复:
  What happens to an uncommitted transaction when the connection is closed?

我知道SqlTransaction将在Dispose()上回滚(请参阅Will a using statement rollback a database transaction if an error occurs?),但是当它的父SqlConnection被处置时会回滚吗?

1 个答案:

答案 0 :(得分:4)

是的,但我不认为它是由SqlConnection类处理的。

我认为这是SQL Server,当连接关闭时会自动回滚所有未提交的事务。

还要考虑SqlConnection默认具有连接池。因此,当您关闭/部署SqlConnection时,“真正的”数据库连接仍然有效。