|
|
1
3
首先,TransactionScope与try/catch不同。TransactionScope是事务的名称范围。必须通过在作用域上调用Complete显式提交作用域中的事务。任何其他情况(包括在作用域中引发的异常)都会导致结束使用block,block处理作用域并隐式回滚未完成的事务,但它不会处理异常。
|
|
|
2
1
事务将为您执行必要的锁定。另外,如果Complete()没有提交事务,则在事务的作用域结束时处理事务时,会有一个隐式回滚(如注释所示)。因此,如果出现异常,所有操作都会自动回滚,数据库中不会发生任何更改。例如,如果第二个查询失败,它还将丢弃第一个查询的更改。 但是,对于StringWriter,它仍然包含直到出现故障的消息(例如
这两个代码都可以出现在您的日志中。
|
|
|
Jake · 如何回滚臭鼬事务以进行集成测试?(缺少隐式原点) 1 年前 |
|
|
Riyaz Vagapov · EF核心交易 1 年前 |
|
|
M. Kemp · Oracle删除操作将永远存在 2 年前 |
|
Kuldeep · 我们什么时候应该在数据库中进行交易? 2 年前 |