html.Grid DisplayFormat数据注释不起作用
-
29-09-2019 - |
题
我试图将我的视图模型绑定到html.grid。我已经将DisplayFormat注释设置为我的属性之一。但是,当渲染网格时,不应用格式。
这是代码:视图模型:
[DisplayFormat(DataFormatString = "{0,10:###,0}")]
public double AmountCurrency { get; set; }
在ASPX上:
<%= Html.Grid<MyViewModel>(Model.MyViewModel)
.Columns( column => {
column.For(x => x.AmountCurrency);
...
当我在ASPX中格式化时,它可以正常工作:
column.For(x => x.AmountCurrency).Format("{0,10:###,0}");
不确定为什么它不适用于数据注释。
任何帮助是极大的赞赏。
谢谢 :)
解决方案
从看着 文档 和 杰里米·斯金纳的评论, ,我认为这仅适用于自动生成的列。
如果自动生成的列不起作用,则 自定义网格渲染器 可能是要走的路。
其他提示
在MVCCONTRIB的版本2中,其网格忽略了DisplayFormat和DisplayName属性。它已在版本3.0.51.0中修复 - 请参阅以下内容:http://mvccontrib.codeplex.com/workitem/7064
我已经检查了一下,现在它正常工作(即使列未自动生成)。
不隶属于 StackOverflow