Я был немного удивлен, увидев, что вы не можете просто выбросить строку формата в Html.EditorFor (). Я грешил, начав использовать EditorTemplates.
Создайте структуру каталогов в своем решении.
Просмотров> Общий> EditorTemplates
Добавьте новый пользовательский элемент управления MVC 2 в папку EditorTemplates и назовите его DateTime.ascx. Html.EditorFor (DateTime) теперь будет использовать этот пользовательский элемент управления для отображения.
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<DateTime?>" %>
<%= Html.TextBox(string.Empty, (Model.HasValue ? Model.Value.ToShortDateString() : string.Empty)) %>