Sql server 交易范围;发生异常后如何提交

Sql server 交易范围;发生异常后如何提交,sql-server,exception,transactionscope,Sql Server,Exception,Transactionscope,我正在改装一个有点复杂的程序。有数百个UI可以使用反射来调用方法列表。有些方法本质上调用第三方DLL。一些DLL抛出异常 有一个DLL抛出一个异常,显然只是为了说我完成了。从数据库的角度来看,可以安全地忽略此异常;然而,我似乎无法让transactionscope忽略它。或者我对transactionscope环境的某些行为一无所知 迄今为止的逻辑 需要使用transactionscope for each item in the methods list.. ... lots of cod

我正在改装一个有点复杂的程序。有数百个UI可以使用反射来调用方法列表。有些方法本质上调用第三方DLL。一些DLL抛出异常

有一个DLL抛出一个异常,显然只是为了说我完成了。从数据库的角度来看,可以安全地忽略此异常;然而,我似乎无法让transactionscope忽略它。或者我对transactionscope环境的某些行为一无所知

迄今为止的逻辑

需要使用transactionscope

for each item in the methods list..
  ... lots of code hitting databases.. that works

  one of the methods..
      using transactionscope suppress 

         try
             dagnamit.dll
         catch exception  -- this exception I want transactionscope to ignore
         end try

         transactionscope Completed
     end using

... more code .. that works when dagnamit.dll isn't called
                 but fails when called, reporting can't call a "disposed object: Transaction:

transactionscope Completed
终端使用


超时不是问题。是的,涉及多台服务器。当然,我没有访问DLL源的权限

如果出现异常,为什么要提交事务?这当然意味着数据不一致?使用transactionscope suppress的
是什么意思?您是否在此处创建新的
TransactionScope