0

在我的模型中,我有具有日期时间类型的 MyDate 属性。我在此模式下使用 DisplayFormat 属性对属性进行签名:

[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MM/yyyy hh:mm}")]
public DateTime MyDate { get; set; }

在我看来:

...
<%= Html.EditorFor(model => model.Evento.MyDate)%>
...

为什么如果财产的价值是'2011-05-03 14:47',在我看来(进入EditorFor)我看到'03/05/2011 02.47'?

DataFormatString 是正确的!

非常感谢您的回复

阿尔贝托

4

2 回答 2

6

除非我弄错了,否则格式字符串{0:dd/MM/yyyy hh:mm}将输出为03/05/2011 02.47. 你看到的是我希望看到的。

更新: 要获得 24 小时符号,您可以使用{0:dd/MM/yyyy HH:mm}大写字母HH来指定小时。

于 2011-05-05T21:01:17.420 回答
4

这是因为:是一个保留字符,指示给定文化的时间分隔符,在您的情况下可能恰好是该.字符。你要:

DataFormatString = @"{0:dd/MM/yyyy HH\:mm}"

您可能还想使用HH24 小时格式而不是hh.

于 2011-05-05T21:30:20.960 回答