日期:2014-05-17 浏览次数:20895 次
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 })