Недавно я обновил приложение MVC 3 до MVC 5. Я создал новый проект MVC 5 и привез свои файлы внутри. Кажется, что даты обрабатываются иначе, чем раньше. Существует сообщение об ошибке, которое отображается в представлении с помощью @Html.ValidationMessageFor(x=>x.mydate)
, которое я не могу переопределить методами DataAnnotation или даже использовать мое предыдущее связующее устройство, которое использует другую культуру для формата «dd/MM/yyyy». Может ли кто-нибудь помочь мне раскрыть изменения для проверки даты в MVC 5?MVC 5 привязка даты даты
Мой класс аннотаций
public class passport
{
[Display(Name = "Fecha de Solicitud")]
//[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
public DateTime? spanishfechaSolicitud { get; set; }
}
и вид. перед тем
@Html.TextBoxFor(x => x.passaporte.spanishfechaSolicitud, new { @Value = String.Format("{0:dd/MM/yyyy}", Model.passaporte.spanishfechaSolicitud) })
после
@Html.EditorFor(x => x.passaporte.spanishfechaSolicitud)
Я обновил свой код в соответствии с тем, что я был проинформирован. Удалите атрибут DataType и атрибут value html. Я также использовал EditorFor(). Теперь дата отображается на странице; однако, валидация javascript говорит: «Поле Fecha de Solicitud должно быть датой». Если я наберу его как MM/dd/yyyy, ему это нравится. Как я могу проверить это форматирование? дд/ММ/YYYY. Заранее спасибо
Можете ли вы разместить свои данныеАннотации и соответствующий HTML-код на вашем представлении? – alex
Чтобы сгенерировать текстовое поле, используйте [TextBoxFor() overload] (http://msdn.microsoft.com/en-us/library/hh833694 (v = vs.118) .aspx), который принимает строку формата '@Html .TextBoxFor (x => x.passaporte.spanishfechaSolicitud, "{0: dd/MM/yyyy}") '(не пытайтесь переопределить атрибут' value'). Включили ли вы jquery 'globalize.js'? –