/// <inheritdoc /> public IEnumerable <T> LoadFromStream <T>(Expression <Func <T, bool> > predicate) where T : class, IIntegrationEvent { return(_entityFactoryService.Create <T>() .Query() .Where(predicate) .OrderBy(x => x.Timestamp)); }
public IActionResult Get(int id) { var greeting = _efs.Create <Greeting>().Get(id); return(greeting is null ? (IActionResult)NotFound() : Ok(greeting)); }
/// <inheritdoc cref="IUnitOfWork"/> public void MarkDirty <TEntity>(TEntity entity) where TEntity : class { var repository = _factoryService.Create <TEntity>(); ((ISessionProvider)repository).GetCurrentSession().Evict(entity); repository.Add(entity); }
public void TestCommit() { //arrange const int testValue = 5; var testItem = new TestEntity(); using (var session = _factory.GetScopedSession()) using (var uow = _factory.Create(IsolationLevel.ReadCommitted, true, true)) { var dataRepository = _factory.Create <TestEntity>(); dataRepository.Add(testItem); uow.Commit(); } //act using (var session = _factory.GetScopedSession()) using (var uow = _factory.Create(IsolationLevel.ReadCommitted, true, true)) { var dataRepository = _factory.Create <TestEntity>(); var modifyData = dataRepository.Get(testItem.Id); modifyData.Status = testValue; uow.Save(); uow.Commit(); } //assert var readedValue = 0; using (var session = _factory.GetScopedSession()) using (var uow = _factory.Create(IsolationLevel.ReadCommitted, true, true)) { var dataRepository = _factory.Create <TestEntity>(); var readedEntity = dataRepository.Get(testItem.Id); readedValue = readedEntity.Status; dataRepository.Delete(readedEntity); uow.Commit(); } Assert.AreEqual(readedValue, testValue); }