日期:2014-05-18 浏览次数:20469 次
using (SqlConnection conn = new SqlConnection(SqlHelper.ConnectionStringLocalTransaction)) { SqlTransaction tran = null; try { conn.Open(); tran = conn.BeginTransaction(); .................;//省略 tran.Commit(); } catch (Exception ex) { if (tran != null) { tran.Rollback(); } } }
--是只要没提交,就可以回滚的。 --只要是一个事务中的语句。
------解决方案--------------------
嗯,同一个事务中就可以了,
但是TransactionScope.Complete()判断的标准是系统是否抛出异常来判断是否回滚,
楼主可以考虑自己添加判断条件来判断是否执行Complete,如果不执行该函数,则系统最后
会自动回滚前面所有的操作(前提是在using语句中)