我在MVC3应用程序中创建了一个简单的HtmlHelper类,并将其放在“ App_Data \ PriceHelper.cshtml ”
中 PriceHelper中的代码,cshtml
@helper DisplayPrice(double price)
{
@String.Format("{0:N}",price)
}
当我在我的视图中尝试使用此帮助时,它不允许我使用@ PriceHelper.DisplayPrice()。
但如果我将hepler方法放在同一个视图上,那么它就可以了。
请让我知道如何使用App_Data中的HtmlHelper到我的视图?
答案 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)