【发布时间】:2019-09-04 07:59:29
【问题描述】:
我的 ASP.Net Core 项目中有以下 API 控制器:
[Authorize]
[Route("api/[controller]/[action]")]
[ApiController]
public class PermissionsController : ControllerBase
{
private readonly PlanraumContext _context;
public PermissionsController(PlanraumContext context)
{
_context = context;
}
[HttpGet("api/[controller]/group/[action]")]
public ActionResult Get(int folderId)
{
return Ok(new PermissionHelper(_context).GetGroupPermissions(folderId));
}
}
很遗憾,我无法访问我的“获取”功能。我尝试了以下路径
- api/permissions/group/get?folderId=6811
- api/permissions/group/get
- api/permissions/get?folderId=6811
而且它们都返回 404 错误。
我的路由有什么问题吗?我没有在我的 startup.cs 中配置任何特定的东西
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
【问题讨论】:
-
我将首先删除
HttpGet属性中的参数,您可能会因路由不匹配而失败。改为[HttpGet] -
你在混合属性和常规routing
标签: c# asp.net asp.net-mvc asp.net-core asp.net-core-mvc