我有一个简单的asp.net核心网络api,带有一个轻推控制器,可为Get请求返回true。 PingController.cs如下所示:
Hash
为什么导航到控制器[Route("api/[Controller]")]
public class PingController : Controller
{
[HttpGet]
public IActionResult Get()
{
return Ok(true);
}
}
返回404?
我在控制器和HttpMethod的顶部添加了路由以进行特定操作。我在这里想念或不明白的是什么?
当我在Startup.cs中添加(http://localhost:56103/api/Ping)
时,控制器可以正常工作。 (这也使我感到困惑。)
Startup.cs如下所示:
app.UseMvcWithDefaultRoute()
答案 0 :(得分:3)
您需要在启动时添加UseMvc()
或UseMvcWithDefaultRoute()
来定义路由。
UseMvcWithDefaultRoute
将一个名为“ default”的默认路由添加到请求执行管道,并等于
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});