我有一个 DateTime 属性,在我的模型中我有这个:
[Display(Name = "Date:")]
[DisplayFormat(DataFormatString = "{0:MM/dd/yyyy HH:mm}", ApplyFormatInEditMode = true)]
[Required(ErrorMessage = "This field is required!")]
public Nullable<System.DateTime> Day { get; set; }
这非常合适,但是我有一个ViewModel,它会填充此属性所保存的任何值,并且在ViewModel的视图中我需要日期来显示DateTime格式的tt
部分。
所以我在ViewModel的cshtml
中尝试了这个:
@Html.DisplayFor(modelItem => item.Day, "{0:MM/dd/yyyy hh:mm tt}")
但是这仍然会在没有tt
的情况下呈现。有没有办法在某些视图上显示格式可以是MM/dd/yyyy HH:mm
,而在其他视图上,显示格式可以是MM/dd/yyyy hh:mm tt
同一属性?
答案 0 :(得分:2)
@Html.DisplayFor(..
将始终使用模型上指定的DisplayFormat
。所以你的代码不会工作。
为了获得&#39;你可以尝试这个日期的一部分。 (因为您只显示日期时间而不是编辑它)
<div>
<span> @item.Day.ToString("MM/dd/yyyy HH:mm tt") </span>
</div>