在ASP.NET MVC中,Html.ActionLink
是一个帮助器方法,用于生成超链接。如果你发现向 Html.ActionLink
添加类时,它被错误地作为 GET 参数添加而不是作为 HTML 属性,这通常是因为方法的参数顺序不正确或者使用了错误的重载版本。
Html.ActionLink
方法有多个重载版本,其中一些允许你指定 HTML 属性,如 class
。正确的使用方式是将 HTML 属性作为最后一个参数传递。
以下是正确使用 Html.ActionLink
并添加类的示例:
@Html.ActionLink("Click Me", "ActionName", "ControllerName", null, new { @class = "my-link-class" })
在这个例子中,"Click Me"
是链接文本,"ActionName"
是动作名称,"ControllerName"
是控制器名称,null
表示没有路由值,而 new { @class = "my-link-class" }
是一个匿名对象,用于指定 HTML 属性。
如果你遇到类被添加为 GET 参数的问题,可能是因为你使用了错误的重载版本或者参数顺序不正确。确保你的调用类似于上面的示例代码。
// 错误的调用方式,class 被错误地作为路由值处理
@Html.ActionLink("Click Me", "ActionName", "ControllerName", new { @class = "my-link-class" }, null)
在这个错误的示例中,new { @class = "my-link-class" }
被错误地解释为路由值而不是 HTML 属性。
// 正确的调用方式
@Html.ActionLink("Click Me", "ActionName", "ControllerName", null, new { @class = "my-link-class" })
确保 HTML 属性对象(包含 @class
)是最后一个参数。
Html.ActionLink
重载版本。通过遵循这些指导原则,你可以正确地向 Html.ActionLink
添加类,并避免将其错误地作为 GET 参数添加。
领取专属 10元无门槛券
手把手带您无忧上云