我创建了一个动作链接,如下所示:
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