【发布时间】:2016-09-05 20:50:17
【问题描述】:
我正在尝试导航到路线/Account/UserProfile/{username},但我不确定我是否正确配置了路线。或者更确切地说,我不确定要在路由表中添加什么才能使这条路由正常工作。
下面是动作方法:
public IActionResult UserProfile(string username)
{
// Do something
}
这是我正确使用的简单 GET 方法。我的问题是,即使我在 url 中提供了一个字符串,例如:/Account/UserProfile/MyUsername,字符串MyUsername 也没有发送到我的控制器。
我只有在创建应用程序时已经添加了标准路由。我需要添加什么才能使这些路由正常工作?
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
【问题讨论】:
-
您的路线中缺少
username参数。参数名称需要匹配 -
@Nkosi 所以这样的路线:
routes.MapRoute(name: 'default2', template: '{controller=Account}/{action=UserProfile}/{username}');? -
检查 CodeCaster 的回答。它更详细。
标签: c# asp.net asp.net-core asp.net-core-mvc