我只是在想,创建System.Transactions TransactionScope时,使用Serializable作为默认的隔离级别的好理由是什么,因为我想不出任何理由(并且似乎无法通过web/app.config
更改默认值,所以您总是需要在代码中设置它)。
using(var transaction = TransactionScope())
{
... //creates a Transaction with Serializable Level
}
相反,我总是不得不编写类似于这样的样板代码:
var txOptions = new System.Transactions.TransactionOptions();
txOptions.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
using(var transaction = new TransactionScope(TransactionScopeOption.Required, txOptions))
{
...
}
任何想法?