如何将@helper函数转换为我调用的局部视图?

时间:2013-04-04 18:59:57

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

我在〜/ App_Code下的Helpers.cshtml文件中有这个@helper函数:

@helper TempCost(Decimal cost)
{
@: @String.Format("{0:C0}", cost)
}

在我看来,我会这样使用:

@Helpers.TempCost(Model.PriceInformation.MyPrice)

PriceInfrormation是我的模型,MyPrice是(十进制)内的属性。

我现在想把这个助手放在它自己的局部视图中。我可以调用局部视图并传递参数没有问题。但是,我不知道如何让局部视图中的代码工作。

我尝试过类似的事情:

@{
decimal cost;
}
@String.Format("{0:C0}", cost)

但是我收到以下错误:

  

错误CS0165:使用未分配的本地变量'cost'

对不起,不是专业的程序员。感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

尝试这种方式:

在用户控件

@model decimal
@string.Format("{0:C0}", Model)

并致电

@Html.Partial("yourusercontrol", Model.PriceInformation.MyPrice)