您的位置:首页 > 数据库

.net 多个数据库事务处理

2009-03-19 13:45 295 查看
TranscationScope用法示例

//标记是否已执行接口库中的操作

bool isYiZhiXingInterface = false;

using (TransactionScope transScope = new TransactionScope())

{

DataBase dbLocal = new DataBase(_connectionString);

DataBase dbInterface = new DataBase(_connectionStringInterface);

try

{

dbLocal.BeginTrans();

dbInterface.BeginTrans();

dbLocal.RunSqlNonQuery_Trans(strSql);

dbInterface.RunSqlNonQuery_Trans(strSqlInterface);

isYiZhiXingInterface = true;

}

catch(System.Data.SqlClient.SqlException ex)

{

dbLocal.RollBack();

if (isYiZhiXingInterface)

dbInterface.RollBack();

dbLocal.Dispose();

dbInterface.Dispose();

throw ex;

}

dbLocal.Commit();

dbInterface.Commit();

transScope.Complete();

dbLocal.Dispose();

dbInterface.Dispose();

transScope.Dispose();

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: