ASP.NET Core MVC Interview Question #45
How do NotFound, BadRequest, and StatusCode work in MVC actions?
Controllers, Actions, Model Binding & Action Results Junior Beginner
Quick Interview Answer
Controller helper methods can create HTTP status-code results. NotFound returns 404, BadRequest returns 400, Unauthorized returns 401, and StatusCode can produce a specified status code.
Detailed Explanation
Controller helper methods can create HTTP status-code results. NotFound returns 404, BadRequest returns 400, Unauthorized returns 401, and StatusCode can produce a specified status code.
Use status codes that accurately represent the outcome. For a normal server-rendered MVC website, the application may also configure status-code pages or custom error pages to provide a user-friendly response.
Code Example
public IActionResult Details(int id)
{
if (id <= 0)
return BadRequest();
var item = _service.Find(id);
if (item == null)
return NotFound();
return View(item);
}