首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET Framework >

关于try catch的有关问题

2012-01-31 
关于try catch的问题问题:在数据操作中启用了事务try{sqlconnection.Open()transactionsqlconnection.Be

关于try catch的问题
问题:
  在数据操作中启用了事务
  try
  { 
  sqlconnection.Open();
  transaction=sqlconnection.BeginTransaction();
  sqlcommand1.ExecuteNonQuery();
  sqlcommand2.ExecuteNonQuery();
  transaction.Commit();
   
  }
  catch(SqlException e)
  {
  MessageBox.Show(e.Message);
  transaction.Rollback();
  }
如果在sqlconnection.Open时出现异常,transaction.Rollback()中执行会出现新的异常(transaction没赋值).
应该如何写try catch块呢


[解决办法]
判断下是不是null就可以了。
[解决办法]

C# code
using (TransactionScope scope = new TransactionScope())  {   //创建事物对象      try      {          //执行事务操作的相关代码                scope.Complete();  //提交事物      }      catch (Exception ex) { throw ex; } //抛出异常      finally { scope.Dispose(); }  //回滚事物  }
[解决办法]
进入新的NET版本,请使用TransactionScope取代传统的事务模型。
[解决办法]
探讨
C# code
using (TransactionScope scope = new TransactionScope())
{ //创建事物对象
try
{
//执行事务操作的相关代码


scope.Complete(); //提交事物
}
catch (Exce……

[解决办法]
探讨

引用:
C# code
using (TransactionScope scope = new TransactionScope())
{ //创建事物对象
try
{
//执行事务操作的相关代码


scope.Complete(); //提交事物
}
catch (Exce……


顶这个, 多用using 这样就……

热点排行