Exemplo n.º 1
0
        /// <summary>
        /// Disposes the transaction, rolling it back if it is still pending.
        /// </summary>
        protected override void Dispose(bool disposing)
        {
            if (_isDisposed)
            {
                return;
            }

            if (disposing && !IsCompleted)
            {
                _connector.CloseOngoingOperations(async: false).GetAwaiter().GetResult();
                Rollback();
            }

            Clear();

            base.Dispose(disposing);
            _isDisposed = true;
        }