2012-09-11 58 views
3

我有一个DateTime属性格式的模型:Model属性格式

[DisplayName("Updated")] 
public DateTime lastUpdatedDate { get; set; } 

此刻,我想我处理不当视图中的日期时间的格式。

<tr> 
    <td>@Html.LabelFor(m=>m.lastUpdatedDate)</td> 
    <td>@Html.Label(Model.lastUpdatedDate.ToLongDateString())</td> 
</tr> 

我相信这是错误的。首先,我应该在模型中进行格式设置,并返回字符串(在用于显示日期的模型中 - Update模型需要控件的DateTime类型)?但它变得复杂 - 时区。我是否应该在get模型上操作日期时间的值(基于用户在注册时选择时区); ..东西? (叫什么?吸气剂?嘿嘿)。

只是为了让我的代码和我一起工作,而我学习MVC。

+1

你有没有试着用DisplayFormat属性 – Khurshid

回答

1

如果你想优雅地处理时区,我建议你阅读这个answer。对于简单的格式化模型中的日期时间属性,用[DisplayFormat]属性修饰它:

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

和您的看法:

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