Установите аннотацию данных DisplayFormat над свойством в вашей модели.
public class User
{
[DisplayFormat(DataFormatString = "{0:dd/MM/yy}", ApplyFormatInEditMode = true)]
public DateTime Birthdate { get; set; }
...
}
Тогда вместо использования @Html.TextBoxFor(..)
используйте @Html.EditorFor(...)
.
Подробнее см. На странице DisplayFormatAttribute MSDN .
Если вы сгенерировали свою модель данных с помощью EF, вы можете просто создать метакласс для своего класса, чтобы применять аннотации данных. Например, если мой файл базы данных называется MyDB.edmx
, создайте файл класса друзей с именем MyDB.cs
. Затем внутри я бы расширил класс User
, добавив к нему класс метаданных и указав аннотацию данных в метаклассе:
[MetadataType(typeof(UserMetaData))]
public partial class User{ }
public class UserMetaData
{
[DisplayFormat(DataFormatString = "{0:dd/MM/yy}", ApplyFormatInEditMode = true)]
public DateTime Birthdate { get; set; }
}
См. пост Скотта Гу о проверке , в основном раздел 'Но что, если мы используем графический инструмент для наших отображений ORM?