2013-05-31 2 views
0

Я использую DataAnotation для проверки, и в некоторых случаях мне нужно отключить ее.Различные проверки на вставку и редактирование

F.E. на создание мне нужно ввести пароль пользователя и подтверждение, но для редактирования он может оставаться пустым и не изменяться.

У меня есть эта модель:

 [Required] 
     [DataType(DataType.Password)] 
     public string Password { get; set; } 

     [DisplayName("Re-enter Password")] 
     [Compare("Password", ErrorMessage = "The password and confirmation do not match.")] 
     public string PasswordControl { get; set; } 

Vould быть прийти отключение требуется пароль на редактирование.

ответ

1

AFAIK, есть два способа, либо будет работать.

  1. Используйте другую модель для редактирования и вставки. Я предпочитаю и использую это в своем приложении. Это простое и будущее доказательство (изменить и вставить модели и правила могут быть совершенно разными).

  2. Настроить ValidationAttribute и переопределить метод IsValid. Используйте некоторый контекст, например, поле IsEdit вашей модели. Его можно использовать с MVC3. См. «Улучшения в области проверки модели» этой статьи http://weblogs.asp.net/scottgu/archive/2010/07/27/introducing-asp-net-mvc-3-preview-1.aspx

Смежные вопросы