c# 如何让程序实现事务 类似于c#里面的数据库事务Transaction
我知道c#里面有个数据库的事务 ,但这个操作只能通过传递sql 语句或者存储过程执行
上代码:
- C# code
public override int ExecuteTransaction(Func<bool>[] arrayFunc) //要执行的委托数组 { arrayFunc.ToList().ForEach(func => { if (func()) //如果这个委托执行成功 { count++; } }); if (count == arrayFunc.Count()) //如果全部执行成功 { Commit(); //提交事务 } else { count = 0; Rollback(); //回滚事务 } return count; } 调用: new BLL.Mem_Member().ExecuteTransaction(new Func<bool>[] { () => new BLL.Mem_Exchange().Add(exchange)==null, () => new BLL.Mem_Member().Update(member)>0 })
求解 如何实现
[解决办法]
你创建副本,提交时跟新到源数据,回滚就不操作了
[解决办法]
可参考