[HttpDelete("{id}")]
public async Task<IActionResult> DeleteTodoItem(long id)
{
var todoItem = await _context.TodoItems.FindAsync(id);
if(todoItem is null)
{
return NotFound();
}
_context.TodoItems.Remove(todoItem);
await _context.SaveChangesAsync();
return NoContent();
}
반환값은 Task 근데 이거 Task로 해도 크게 상관은 없다.
코드를 내려가면서 한번 보자.
id는 long으로 선언했다.
해당하는 id를 가진 객체를 컨텍스트에서 ( 인메모리디비 )에서 읽어온다. 근데 없으면 404에러를 띄우고 있으면 그 아래로..
컨텍스트에서 해당 아이템을 삭제하고 그리고 반영한다. (SaveChangesAsync)
마지막으로 NoContent()를 반환한다.