C# 设置日期时间格式的两种方法

C# 设置日期时间格式的两种方法,c#,asp.net-mvc,datetime,C#,Asp.net Mvc,Datetime,我有一个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; }

我有一个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; }
但这仍然在没有
tt
的情况下呈现。有没有一种方法可以使某些视图的显示格式可以是
MM/dd/yyyyy HH:MM
,而在其他视图中,对于相同的属性,显示格式可以是
MM/dd/yyyyy HH:MM tt

@Html。DisplayFor(…
将始终使用模型上指定的
DisplayFormat
。因此您的代码无法工作

为了获取日期的“tt”部分,您可以尝试以下操作。(因为您只显示日期时间,而不编辑它)


@项目日期至字符串(“MM/dd/yyyy HH:MM tt”)
@Html.DisplayFor(modelItem => item.Day, "{0:MM/dd/yyyy hh:mm tt}")
<div>
<span> @item.Day.ToString("MM/dd/yyyy HH:mm tt") </span>
</div>