我的应用类型是MVC应用。和DB是SQL SERVER 2008.DataBase表上的每个操作都与存储过程一起使用。在一个页面中,我将使用两个不同的存储过程将新行添加到两个不同的表中。这些表之间有关系。在我的[Post] Create()动作中我调用了这两个SP。但我的问题是:如果任何这些存储过程执行没有成功然后roolback。没有任何行必须在第一个表中插入no到第二个表。我该怎么做这个过程?
我的ViewModel包括这两个表......
答案 0 :(得分:1)
考虑使用TransactionScope
using (var scope = new new TransactionScope())
using (var context = new MyDbContext())
{
contex.SP1();
contex.SP2();
scope.Complete();
}