Я работаю над приложением ASP.Net MVC3, и у меня возникают проблемы с пониманием «правильного способа» выполнения проверки, которую я ищу.
Например, рассмотрим модель, которая выглядит следующим образом:
[Required]
[StringLength(10, MinimumLength = 10)]
[RegularExpression("[0-9]{10}")]
public string Id { get; set; }
[Required]
public string Value { get; set; }
Если у меня Id «2342» и я пытаюсь выполнить POST, отображение модели включается и регистрирует ошибку из-за проверки длины. Однако, если выполнить GET для / controller / 2342, то MVC, похоже, с радостью создаст модель с этим недопустимым состоянием (ModelState.Valid будет иметь значение true). Я мог бы создать некоторые проверки в контроллере, чтобы поймать это, но это кажется излишним.
Каков наилучший способ сделать это?
Спасибо!
Jacob