Я пытаюсь создать шаблон редактора для поля DateTime, и, похоже, он не учитывает мой атрибут DisplayFormat.
Моя модель:
public class Project
{
[Display(Name="Project Name")]
[Required]
public string ProjectName { get; set; }
[Display(Name="Start Date")]
[DisplayFormat(DataFormatString="{0:M/d/yyyy}", ApplyFormatInEditMode=true)]
public DateTime? StartDate { get; set; }
}
Мой шаблон редактора в папке /Views/Projects/EditorTemplates/DateTime.cshtml
@model DateTime?
@Html.TextBoxFor(m => Model, new { @class="datepicker" })
Вот вид, который связывает все вместе:
@model Project
<fieldset>
<legend>Project</legend>
<div class="editor-label">
@Html.LabelFor(m => m.ProjectName)
</div>
<div class="editor-field">
@Html.EditorFor(m => m.ProjectName)
@Html.ValidationMessageFor(m => m.ProjectName)
</div>
<div class="editor-label">
@Html.LabelFor(m => m.StartDate)
</div>
<div class="editor-field">
@Html.EditorFor(m => m.StartDate)
@Html.ValidationMessageFor(m => m.StartDate)
</div>
</fieldset>
Когда у меня это так, я вижу временную часть даты. Когда я удаляю шаблон редактора, он работает нормально и показывает только часть даты. Почему кажется, что DisplayFormat игнорируется, когда у меня есть шаблон редактора?