如下代码所示:
using
(TransactionScope scope1
=
new
TransactionScope())
{
// 事务方式对数据库进行操作
using (TransactionScope scope2 = new TransactionScope(TransactionScopeOption.Suppress))
{
// 非事务方式对数据库进行操作
}
}
{
// 事务方式对数据库进行操作
using (TransactionScope scope2 = new TransactionScope(TransactionScopeOption.Suppress))
{
// 非事务方式对数据库进行操作
}
}
注意这里是指同一数据库,为什么会这样呢?我想很有可能是前一步参与事务的操作,将数据库死锁了,而导致后一步无法正常执行,以至于超时。