Я пишу приложение ASP.NET MVC3 на C # и обнаружил, что вызов Html.HiddenFor
, на мой взгляд, будет отображать DateTime
иначе (и неправильно), чем если бы я должен был вызвать Html.DisplayFor
.
Модель, которая принимает значение, имеет декоратор DisplayFormat, и это похоже на Html.DisplayFor
. Рассматриваемое свойство записывается как:
[DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
public DateTime MeetingStartDate { get; set; }
И представление отображает это, используя:
@Html.DisplayFor(model => model.MeetingStartDate)
@Html.HiddenFor(model => model.MeetingStartDate)
Вызов DisplayFor отобразит дату как 16/04/2012
, однако HiddenFor отобразит ее как value="04/16/2012 00:00:00"
.
Я пытался изменить текущую культуру, чтобы установить DateTimeFormat
, но это не имело никакого эффекта.
Текущая культура - en-GB, поэтому в любом случае не следует печатать даты en-US.