Beispiel #1
0
        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);
            }
        }
Beispiel #2
0
        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
            }));
        }