Asp.net mvc 使用新的{@class=";btn btn primary";}时,URL会发生更改

Asp.net mvc 使用新的{@class=";btn btn primary";}时,URL会发生更改,asp.net-mvc,Asp.net Mvc,我创建了一个Actionlink,如下所示: Html.ActionLink("SignUp","SignUp","Account", new { @class="btn btn-primary"}) 它应该把我带到“帐户”控制器中的“注册”方法,URL应该是这样的: http://localhost:23181/Account/SignUp 但我得到的是这个URL http://localhost:23181/Home/SignUp?Length=7 如果我删除新的{@class=“bt

我创建了一个Actionlink,如下所示:

Html.ActionLink("SignUp","SignUp","Account", new { @class="btn btn-primary"})
它应该把我带到“帐户”控制器中的“注册”方法,URL应该是这样的:

http://localhost:23181/Account/SignUp
但我得到的是这个URL

http://localhost:23181/Home/SignUp?Length=7
如果我删除
新的{@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
)

谢谢!我只需要等待7分钟,将此标记为已回答。这是必需的。太棒了,很高兴能帮上忙。