public async Task Handle_CreateEntityFromModelCommand_Test() { using (var scope = this.provider.CreateScope()) { var mediator = scope.ServiceProvider.GetRequiredService <IMediator>(); var model = new Model(); var request = new CreateEntityFromModelCommand <Model, Entity, int, EntityDbContext>(model); var result = await mediator.HandleAsync(request, default); Assert.NotNull(result); } }
public async Task <IActionResult> PostAsync([FromBody] CreateToDoListModel model, CancellationToken cancellationToken = default) { var request = new CreateEntityFromModelCommand <CreateToDoListModel, ToDoList, int, EntityDbContext>(model); var result = await mediator.HandleAsync(request, cancellationToken); if (!result.IsSuccess) { var problemDetails = new ProblemDetails(); problemDetails.Extensions.Add(nameof(Reason), result.Reasons); return(new BadRequestObjectResult(problemDetails)); } return(this.CreatedAtAction("GetAsync", new IdModel <int> { Id = result.Value })); }