protected override void Dispose(bool disposing) { if (disposing) { db.Dispose(); } base.Dispose(disposing); }
public void Dispose() { Db.Dispose(); }
void Dispose(bool disposing) { if (!disposed) { if (disposing) { if (_httpContextAccessor.HttpContext != null) { if (_context.Database.CurrentTransaction != null && !rollback && _contextManager.IsFirst) { try { _context.Database.CurrentTransaction.Commit(); } catch { _context.Database.CurrentTransaction.Rollback(); throw; } finally { if (_contextManager.IsFirst) { _context.Dispose(); } } } } else { bool isDisposed = false; try { var id = _context.Database.CurrentTransaction.TransactionId; } catch { isDisposed = true; } if (!isDisposed && _context.Database.CurrentTransaction != null && !rollback && isFirst) { try { _context.Database.CurrentTransaction.Commit(); } catch { _context.Database.CurrentTransaction.Rollback(); throw; } finally { if (isFirst) { _context.Dispose(); UnitOfWorkContexManager.RemoveContext(Thread.CurrentThread.ManagedThreadId); } } } } } } disposed = true; }