我有登录 Controller 和注册 ActionResult
public ActionResult Register()
{
return View();
}
如果我将任何数据发布到 Register actionresult url 如下所示,
WebSiteName/Login/Register
我想将路由 url 更改为 WebSiteName/Login/Reg=Id?
所以我尝试了下面但是我无法更改路由 url。
routes.MapRoute(
name: "something",
url: "Login/Reg=Id?",
defaults: new
{
controller = "Login",
action = "Register",
id = id = UrlParameter.Optional
}
);
那么我如何在 asp.net mvc 中更改 url 呢?
我们将不胜感激。
谢谢。
最佳答案
您正在尝试使用错误形式的 url 参数。您的选择是:
Url部分参数:WebSiteName/Login/Reg/{id}
为此,您可以使用以下配置
routes.MapRoute( name: "something", url: "Login/Reg/{id}", defaults: new { controller = "Login", action = "Register", id = UrlParameter.Optional } );
查询字符串参数:WebSiteName/Login/Reg?id={id}
这里根本不需要在config中指定参数:
routes.MapRoute( name: "something", url: "Login/Reg", defaults: new { controller = "Login", action = "Register" } );
当然,在这两种情况下,都假定您的操作 Register
具有参数 id。
关于c# - 在 asp.net mvc 中更改路由 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21337823/