Ejemplo n.º 1
0
 private void Timeout()
 {
     if ((!_complete) && (null != _expectedCurrent))
     {
         TransactionsEtwProvider etwLog = TransactionsEtwProvider.Log;
         if (etwLog.IsEnabled())
         {
             etwLog.TransactionScopeTimeout(_expectedCurrent.TransactionTraceId);
         }
         try
         {
             _expectedCurrent.Rollback();
         }
         catch (ObjectDisposedException ex)
         {
             // Tolerate the fact that the transaction has already been disposed.
             if (etwLog.IsEnabled())
             {
                 etwLog.ExceptionConsumed(TraceSourceType.TraceSourceBase, ex);
             }
         }
         catch (TransactionException txEx)
         {
             // Tolerate transaction exceptions
             if (etwLog.IsEnabled())
             {
                 etwLog.ExceptionConsumed(TraceSourceType.TraceSourceBase, txEx);
             }
         }
     }
 }