ASP.NET Core Web API Interview Question #6
What does the [ApiController] attribute do?
Web API & REST Fundamentals, Controllers, HTTP Methods & Status Codes Junior Beginner
Quick Interview Answer
The ApiController attribute enables API-specific conventions and behaviors. Important features include automatic HTTP 400 responses for invalid model state, binding-source inference, attribute-routing requirements, and improved API error behavior.
Detailed Explanation
The ApiController attribute enables API-specific conventions and behaviors. Important features include automatic HTTP 400 responses for invalid model state, binding-source inference, attribute-routing requirements, and improved API error behavior.
It reduces repetitive controller code, but developers still need to design validation, authorization, business rules, and response contracts deliberately.
Code Example
[ApiController]
[Route("api/[controller]")]
public class CustomersController : ControllerBase
{
[HttpPost]
public IActionResult Create(CreateCustomerRequest request)
{
return Ok(request);
}
}