1

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

PriceHelper,cshtml中的代码

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

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

但是如果我把 hepler 方法放在同一个视图上,那么它就可以工作。

请让我知道如何将 App_Data 中的 HtmlHelper 用于我的视图?

4

2 回答 2

3

Razor 助手App_Code存储在文件夹 not时,可以重复使用它们App_Data

您可以在此处找到更多详细信息:ASP.NET MVC 3 和 Razor 中的 @helper 语法

于 2013-02-20T08:05:34.293 回答
0

App_Data适用于数据资源(xml、文本、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)
于 2013-02-20T08:02:47.760 回答