如何在App_Code文件夹中的Razor视图中使用Url.Action

时间:2015-05-03 21:24:18

标签: asp.net-mvc asp.net-mvc-4 razor html-helper razor-2

如何在App_Code文件夹的Razor助手中使用Url.Action()?

我根据Why I cant use Html.RenderPartial in razor helper view File in App_Code Folder?

尝试了
@using System.Web.Mvc.Html
@helper Tabel(System.Web.Mvc.HtmlHelper html)
{ 
    @Html.Raw(Url.Action("Index", "Home"))
}

但是编译错误

  

CS0103:当前上下文中不存在名称“Url”

使用ASP.NET MVC4和jquery。

2 个答案:

答案 0 :(得分:5)

Html.Raw()使用HtmlHelper类但Url.Action()使用UrlHelper Class,因此您也需要传递<{p}}

@using System.Web.Mvc
@helper Tabel(HtmlHelper html, UrlHelper url)
{ 
    html.Raw(url.Action("Index", "Home"))
}

答案 1 :(得分:0)

这对我也有效,而无需传递参数:

@helper Tabel()
{ 
    var html = ((System.Web.Mvc.WebViewPage)WebPageContext.Current.Page).Html;
    var url = ((System.Web.Mvc.WebViewPage)WebPageContext.Current.Page).Url;

    html.Raw(url.Action("Index", "Home"))
}