public async Task <IActionResult> CreateTodoItem(TodoItemDTO todoItemDto) { var createdTodoItemDto = await _itemsService.CreateTodoItem(todoItemDto); return(CreatedAtAction( nameof(GetTodoItem), new { id = createdTodoItemDto.Id }, createdTodoItemDto)); }
public async Task <ActionResult <TodoItemDto> > CreateTodoItem(TodoItemDto todoItemDto) { TodoItemDto todoItemDtoCreated = await _todoItemsService.CreateTodoItem(todoItemDto); //Una petición POST donde normalmente se crea un recurso en el servidor normalmente provee al cliente que ha //hecho el POST de una URL que puede usar para hacer un GET y obtener el recurso recien creado. //Para ello, lo que se suele hacer es añadir un Header en la respuesta. Pues bien, al devolver una respuesta //de tipo 'CreatedAtAction', el ObjectResult ya hace esto por nosotros y genera la URL con la información //que pasamos a CreatedAtAction. return(CreatedAtAction(nameof(GetTodoItem), new { id = todoItemDtoCreated.Id }, todoItemDtoCreated)); }