27

例如,我有一个十进制值:59625879,00

我想这样显示这个值:59.625,87959625,879

我该怎么做@Html.DisplayFor(x => x.TAll, String.Format())

谢谢。

4

1 回答 1

79

使用属性装饰您的视图模型[DisplayFormat]属性并指定所需的格式:

[DisplayFormat(DataFormatString = "{0:N}", ApplyFormatInEditMode = true)]
public decimal TAll { get; set; }

然后在你看来:

@Html.DisplayFor(x => x.TAll)

如果您不想在视图模型上执行此操作,则另一种可能性也可以在视图内执行:

@Model.tAll.ToString("N")

但我会推荐你​​第一种方法。


另一种可能性是为小数类型 ( ~/Views/Shared/DisplayTemplates/MyDecimalTemplate.cshtml) 编写自定义显示模板:

@string.Format("{0:N}", Model)

进而:

@Html.DisplayFor(x => x.TAll, "MyDecimalTemplate")
于 2012-08-22T06:31:22.427 回答