我有一个自定义助手,需要调用Html.ActionLink
@helper GetLink(int id, string name)
{
@Html.ActionLink(name, "Index", "MyController", new { id = id }, null);
}
它在另一个页面上运行得很好,但在我的自定义助手(名为customhelpers.cshtml,位于App_Code文件夹中)中,我得到了以下错误:
'System.Web.WebPages.Html.HtmlHelper' does not contain a definition for 'ActionLink' and the best extension method overload 'System.Web.Mvc.Html.LinkExtensions.ActionLink(System.Web.Mvc.HtmlHelper, string, string, string, object, object)' has some invalid arguments
这意味着它找不到Html.ActionLink类,但我尝试引用相关的命名空间(@using System.Web.MVC.Html),但没有成功。
Htmlhelpers无法从App_Code访问,但您可以从Paul Stovell(ScottGu也提到过)中看到一个很好的解决方法