//создание UnitOfWork public IUnitOfWork CreateUnitOfWork() { var transaction = _connection.BeginTransaction(); var uow = new UnitOfWork(transaction, RemoveTransaction, RemoveTransaction); _rwLock.EnterWriteLock(); _uows.AddLast(uow); _rwLock.ExitWriteLock(); return uow; }
//удаление транзакции private void RemoveTransaction(UnitOfWork obj) { _rwLock.EnterWriteLock(); _uows.Remove(obj); _rwLock.ExitWriteLock(); }