当 TransactionScope 超时时会发生什么
What happens when a TransactionScope times-out
在 C# 中,我使用的是 TransactionScope()。如果 TransactionScope() 超时,事务是被提交还是被回滚?
如 MSDN 上所述,事务中止,即回滚并抛出 TransactionAbortedException 异常。
https://msdn.microsoft.com/en-us/library/ms149852%28v=vs.110%29.aspx
https://msdn.microsoft.com/en-us/library/ee818746%28v=vs.110%29.aspx
标准超时值为 10 分钟。如果触发 TransactionScope 超时,事务将回滚。如果你没有提交事务,状态不会改变(ACID原则)。
Wiki 上的 ACID 原则:https://en.wikipedia.org/wiki/ACID
可以使用 maxTimeout 更改 .config 文件中的超时。
https://msdn.microsoft.com/en-us/library/system.transactions.configuration.machinesettingssection.maxtimeout(v=vs.110).aspx
在 C# 中,我使用的是 TransactionScope()。如果 TransactionScope() 超时,事务是被提交还是被回滚?
如 MSDN 上所述,事务中止,即回滚并抛出 TransactionAbortedException 异常。
https://msdn.microsoft.com/en-us/library/ms149852%28v=vs.110%29.aspx https://msdn.microsoft.com/en-us/library/ee818746%28v=vs.110%29.aspx
标准超时值为 10 分钟。如果触发 TransactionScope 超时,事务将回滚。如果你没有提交事务,状态不会改变(ACID原则)。
Wiki 上的 ACID 原则:https://en.wikipedia.org/wiki/ACID
可以使用 maxTimeout 更改 .config 文件中的超时。 https://msdn.microsoft.com/en-us/library/system.transactions.configuration.machinesettingssection.maxtimeout(v=vs.110).aspx