我正在遵循此教程创建ASP.NET Core Web API,并在添加控制器的部分中,教程提供了代码以替换控制器的模板代码。其中一件真正引起我的注意的事情是,在模板代码中,我获得了:
TodoController : Controller
然后在教程代码中,我应该使用以下代码替换它:
[Route("api/[controller]")]
[ApiController]
TodoController : ControllerBase
我非常想知道为什么Web API控制器需要从ControllerBase
派生而不是从Controller
派生。这样做的原因是什么?