ASP.Net Core MVC中的路由问题可以通过以下方法进行解决:
[Route("api/[controller]")]
public class MyController : Controller
{
[HttpGet("{id}")]
public IActionResult Get(int id)
{
// 处理请求
return Ok();
}
}
上述代码中,[Route("api/[controller]")]指定了Controller的路由为"api/My",而[HttpGet("{id}")]指定了Get方法的路由为"api/My/{id}"。
[RoutePrefix("api")]
public class MyController : Controller
{
[HttpGet("my/{id}")]
public IActionResult Get(int id)
{
// 处理请求
return Ok();
}
}
上述代码中,[RoutePrefix("api")]指定了整个Controller的路由前缀为"api",而[HttpGet("my/{id}")]指定了Get方法的路由为"api/my/{id}"。
[Route("api/[controller]")]
public class MyController : Controller
{
[HttpGet("{id}")]
public IActionResult Get(int id)
{
// 处理GET请求
return Ok();
}
[HttpPost]
public IActionResult Post([FromBody] MyModel model)
{
// 处理POST请求
return Ok();
}
}
上述代码中,[HttpGet("{id}")]指定了Get方法只能处理GET请求,而[HttpPost]指定了Post方法只能处理POST请求。
通过以上方法,可以有效解决ASP.Net Core MVC中的路由问题。