我需要使用嵌套事务作用域来执行一些操作:
1)插入地址
2)之后插入ContactInfo
3)在此之后插入UserInfo
//one class
using (TransactionScope transaction = new TransactionScope(TransactionScopeOption.Required))
{
user.ContactInfo = BLContactInfo.Add(user.ContactInfo);
BEUser newUser = DLSecurity.CreateUser(user);
transaction.Complete();
//.......
}
//two class
using (TransactionScope transaction = new TransactionScope(TransactionScopeOption.Required))
{
contactInfo.Address = BLAddress.Add(contactInfo.Address);
BEContactInfo newContactInfo = DLContactInfo.Add(contactInfo);
transaction.Complete();
return newContactInfo;
}我不知道:这条路好吗?我可以避免使用嵌套事务吗?
发布于 2011-03-10 19:29:25
啊--没有什么能说明你为什么需要嵌套事务。事务范围不应为(!)在班级里。在顶层创建一个外部事务,然后进行所有调用。
https://stackoverflow.com/questions/5259035
复制相似问题