TextBoxFor 显示没有时间的日期

TextBoxFor show date without time

我想在文本字段中以格式 MM/dd/yy 显示日期。我将模型 class 描述为:

public class VacancyFormViewModel
{
    public int? ID { get; set; }
    [DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:MM/dd/yy}")]
    public DateTime SurgeryDate { get; set; }

当然,我可以用EditorFor代替TextBoxFor

@Html.EditorFor(p => p.SurgeryDate, new { @class = "form-control" })

问题是 css 样式,客户想要应用 bootstrap 样式,但已损坏:

如果我设置 TextBoxFor 而不是 EditorFor 我会得到带时间的日期:

@Html.TextBoxFor(p => p.SurgeryDate, new { @class = "form-control" })

有什么办法可以解决我的问题吗?或者为 EditorFor 应用样式,或者没有时间显示 TextBoxFor,或者第三种方式?

您可以在 TextBoxFor 助手中指定日期格式,如下所示:

@Html.TextBoxFor(m => m.SurgeryDate, "{0:MM/dd/yy}",  new { @class = "form-control" })