в asp.net MVC 2 / beta Формат даты выпуска: значение недействительно - PullRequest
0 голосов
/ 18 октября 2010

в asp.net MVC 2 или бета, модель не принимает дату 13 (более 12-го числа).Модель с объявлениями об ошибках

«Значение« 20/10 / 2010 »недопустимо для MyDateFieldName»

что делать?Модель показывает ложное состояние как ModelState = False.почему?

1 Ответ

0 голосов
/ 18 октября 2010

По умолчанию связыватель модели использует InvariantCulture для анализа DateTime, а инвариант - это мм / дд / гггг, тогда как вы используете европейский формат дд / мм / гггг. Вы можете переопределить связыватель модели для типов DateTime, чтобы использовать дд / мм / гггг, хотя это будет иметь проблемы с интернационализацией (хотя, по моему мнению, так же, как и при выборе инвариантной культуры, я бы сделал любой из вариантов xx / xx / xxxx недействительно без явного включения). Вы можете переопределить механизм связывания модели для анализа в соответствии с настройками культуры клиента (хотя, если вы используете средства выбора даты, у вас есть больше мест для беспокойства по этому поводу). В качестве альтернативы вы могли бы принять ваши DateTimes в формате гггг / мм / дд, насколько я знаю, гггг / дд / мм не распознается никакими другими культурами и будет универсально приемлемым.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...