public async Task <TEntity> Get(TKey id) { var request = new ReadEntityRequest <TKey, TEntity>(id); var result = await _mediator.Send(request); return(result); }
public async Task Test_ReadEntitiesRequest_Handler() { var request = new ReadEntityRequest <int, TestModel>(1); var mediatr = IoC.ServiceProvider.GetRequiredService <IMediator>(); var result = await mediatr.Send(request); Assert.IsNotNull(result); }
public async Task Test_CreateEntityRequest_Handler() { var mediatr = IoC.ServiceProvider.GetRequiredService <IMediator>(); var request = new CreateEntityRequest <TestModel>(new TestModel() { Name = "test name 1", Description = "test description 1" }); var result = await mediatr.Send(request); var getPersistedValue = new ReadEntityRequest <int, TestModel>(request.Entity.Id); var persistedValue = await mediatr.Send(getPersistedValue); Assert.AreEqual(result, persistedValue); }
public async Task Test_ReadEntityRequest_Handler() { var request = new ReadEntityRequest <int, TestModel>(1); var mediatr = IoC.ServiceProvider.GetRequiredService <IMediator>(); var result = await mediatr.Send(request); var expectedValue = new TestModel() { Id = 1, Name = "test name 1", Description = "test description 1" }; Assert.IsNotNull(result); foreach (var property in typeof(TestModel).GetProperties()) { Assert.AreEqual(property.GetValue(expectedValue), property.GetValue(result)); } }
public Task <TEntity> Handle(ReadEntityRequest <TKey, TEntity> request, CancellationToken cancellationToken) { var keyProperty = typeof(TEntity).GetProperties().FirstOrDefault(p => p.GetCustomAttribute <KeyAttribute>() != null); return(Task.FromResult(_entities.FirstOrDefault(e => ((TKey)keyProperty.GetValue(e)).Equals(request.Key)))); }
public async Task <TEntity> Handle(ReadEntityRequest <TEntity, TKey> request, CancellationToken cancellationToken) { return(await _innerHandler.Handle(request, cancellationToken)); }
public async Task <TEntity> Handle(ReadEntityRequest <TKey, TEntity> request, CancellationToken cancellationToken) { var resultToReturn = await innerDataContext.Set <TEntity>().FindAsync(request.Key); return(resultToReturn); }