【发布时间】:2018-07-28 09:13:41
【问题描述】:
我已经构建了一个 ASP.NET Core MVC 应用程序并且我使用了默认的 MVC URL 路由:
app.UseMvc(routes =>
{
routes.MapRoute("default", "{controller=Home}/{action=Index}/{id?}");
});
我想创建GET 方法来创建和编辑用户。
要创建新用户,我需要转到 url /Admin/User 并编辑现有用户 url /Admin/User/{id:int}
我尝试过创建这样的方法:
[HttpGet]
public async Task<IActionResult> User(int? id)
{
}
如何限制 id 参数的类型?
我只需要允许访问 /Admin/User 或 /Admin/User/{id:int} - 但如果我尝试即 - /Admin/User/ABCD - (使用字符串作为 ID) - 它也是允许的。
如果参数 ID 将是另一种类型而不是数字,那么我想返回 404。
【问题讨论】:
标签: c# asp.net-mvc asp.net-core asp.net-core-mvc asp.net-mvc-routing