protected virtual void OnError(ExecuteTransactionErrorEventArgs e)
 {
     if (Error != null)
     {
         Error(this, e);
     }
 }
 public void ThrowException(List <string> skipTables, Exception exception)
 {
     if (exception != null || skipTables.Count > 0)
     {
         ExecuteTransactionErrorEventArgs args = new ExecuteTransactionErrorEventArgs(exception as ExceptionExecuteTransaction, exception, skipTables.ToArray());
         OnError(args);
         if (!string.IsNullOrEmpty(args.ErrorMessage))
         {
             textError = args.ErrorMessage;
         }
         if (args.ThrowException && exception != null)
         {
             throw exception;
         }
     }
 }