使用 new {@class = "btn btn-primary" } 时更改 URL



我创建了一个动作链接,如下所示:

Html.ActionLink("SignUp","SignUp","Account", new { @class="btn btn-primary"})

它应该将我带到"帐户"控制器中的"注册"方法,URL 应该是这样的:

http://localhost:23181/Account/SignUp

但我得到的是这个网址

http://localhost:23181/Home/SignUp?Length=7

如果我删除new { @class="btn btn-primary"},我会得到正确的URL。 你能告诉我我做错了什么吗?谢谢。

这是因为 MVC 尝试序列化对象,

您可以尝试将 null 传递给routeValues参数

Html.ActionLink("SignUp","SignUp","Account",null, new { @class="btn btn-primary"})

以下是 MSDN 的 ActionLink 扩展:

public static MvcHtmlString ActionLink(
this HtmlHelper htmlHelper,
string linkText,
string actionName,
Object routeValues,
Object htmlAttributes
)

https://msdn.microsoft.com/en-us/library/dd492124(v=vs.118(.aspx

最新更新