我有一个包含金额和货币的CurrencyAmount类型。
我有一个扩展方法,可以在这样的视图中显示这种类型:
public static MvcHtmlString Display(this HtmlHelper html, Quipu.Eba.Model.CurrencyAmount currencyAmount, object htmlAttributes = null)
{
String value = currencyAmount.Amount.ToString("N2") + " " + currencyAmount.Currency.IsoCode;
return new MvcHtmlString(value);
}
然后在视图中我称之为:
Html.Display(TransferAmount)
我现在的问题是,如果我想用DisplayFor调用这个属性,我应该写一个模板意味着重复代码。
如何让我的方法显示尝试查找是否有模板,比如DisplayFor会做什么?
这样我可以统一来自Display和DisplayFor的调用来访问同一个模板。
答案 0 :(得分:0)
只需使用DisplayFor
即可添加部分视图:
<强>视图\共享\ DisplayTemplates \ CurrencyAmount.cshtml 强>
@model Quipu.Eba.Model.CurrencyAmount
@(Model.Amount.ToString("N2") + " " + Model.Currency.IsoCode)
最后,在您看来:
@Html.DisplayFor(m => m.TransferAmount)