有以下剃刀代码。
<p>@Html.DisplayFor(modelitem => item.Price)</p>
现在,当价格为0时,我需要显示文本“Free”。所以我做了以下事情。
<p>
@(item.Price == 0 ? "Free" : string.Format("{0:$0.00}", item.Price))
</p>
看起来非常冗长。有没有更好的方法呢?
答案 0 :(得分:1)
您可以使用DisplayTemplates,首先在(~/Views/Shared/DisplayTemplates/Price.cshtml
)中创建模板:
@model float
<div>
@(Math.Abs(Model) < 1 ? "Free" : string.Format("{0:$0.00}", Model))
</div>
然后使用这种方式:
@Html.DisplayFor(p => item.Price, "Price")
答案 1 :(得分:0)
在您的模型中尝试rails server