Возможно ли, что правила проверки на стороне клиента фактически не применяются? Вы проверили, что обязательный атрибут работает как положено? Вы должны быть в состоянии использовать firebug для двойной проверки того, что регулярное выражение одинаково на стороне сервера, что все значения соответствуют ожидаемым и т. Д.
Кроме того, может быть, что вставленное значение проходит через регулярное выражение, но все еще не может быть преобразовано в datetime с помощью связывателя модели - это также может привести к ошибке модели.
Я не проверял ваше регулярное выражение, чтобы увидеть, что оно действительно делает, но если вы пытаетесь проверить, что ввод является действительной датой, используйте вместо этого DataTypeAttribute
.