如何使用App_Data中的HtmlHelper在MVC3中查看

时间:2013-02-20 07:37:01

标签: asp.net-mvc asp.net-mvc-3

我在MVC3应用程序中创建了一个简单的HtmlHelper类,并将其放在“ App_Data \ PriceHelper.cshtml

中 PriceHelper中的

代码,cshtml

@helper DisplayPrice(double price)
{
    @String.Format("{0:N}",price)
}

当我在我的视图中尝试使用此帮助时,它不允许我使用@ PriceHelper.DisplayPrice()。

但如果我将hepler方法放在同一个视图上,那么它就可以了。

请让我知道如何使用App_Data中的HtmlHelper到我的视图?

2 个答案:

答案 0 :(得分:3)

Razor助手存储在App_Code文件夹而不是App_Data时可以重复使用。

您可以在此处找到更多详细信息:ASP.NET MVC 3 and the @helper syntax within Razor

答案 1 :(得分:0)

App_Data用于数据资源(xml,text,db文件)而不是代码。使用另一个文件夹,例如Views/Shared.

我的选择是创建一个HTML帮助器(并将其放入模型中):

public static class HtmlHelpers
    {
        public static string DisplayPrice(this HtmlHelper helper, double price)
        {
            return String.Format("{0:N}", price);
        }
    }

在视图中使用如下:

 @Html.DisplayPrice(10)