Fork me on GitHub

[转载]如何在LinqToSql项目中应用TransactionScope数据库事务

在LinqToSql 为了删除一条部门记录。a56爆大奖在线娱乐们首选要删除该部门被引用的外键表记录这里是员工表,(以上代码只是为举例用,实际开发中是不会有此种业务的)当外键记录都删除成功后代码执行到第8行,这时才能能删除部门对象。否则报SqlException外键引用无法删除部门记录。a56爆大奖在线娱乐们唯一需要做的只是将 DataContext.SubmitChanges();这句放在所有Linq操作数据库语句之后这样就可以调用数据库事务机制了。比如当第5行代码执行时SystemUser还被Order表引用。当SubmitChanges执行时会自动调用transaction.Rollback()方法回滚SubmitChanges()之前的所有被影响的数据库记录,详情请阅Reflector。
posted @ 2014-12-09 15:18  VAllen  阅读(674)  评论(0编辑  收藏  举报