Проверка на стороне клиента и сервера в приложении asp.net MVC - PullRequest
4 голосов
/ 18 июня 2009

Мы запускаем новое приложение ASP.NET 3.5 MVC. Ниже приведены требования к валидации:

  • Проверка на стороне клиента и сервера.
  • Правила валидации в одном месте.
  • Рассмотрены распространенные сценарии, такие как «Пароль» и «Подтверждение пароля».

Параметры:

  • DataAnnotation (ТОЛЬКО выполняет проверку на стороне сервера)
  • EL 4.1 Блок приложения проверки (ТОЛЬКО выполняет проверку на стороне сервера)
  • xVal Framework
  • Библиотека валидации framework
  • Validator Toolkit Framework
  • ДРУГОЕ?

xVal и «Библиотека валидации» могут использовать плагин DataAnnotation и jQuery.

Если в форме есть поле, которое требуется для «Создать», но не требуется для «Обновления», какая из этих платформ может обработать этот сценарий?

Посоветуйте, пожалуйста, какой вариант будет лучшим для валидации клиента и сервера MVC?

Спасибо.

1 Ответ

4 голосов
/ 18 июня 2009

Я могу ответить на другие вопрос:)

FluentValidation выглядит интересно. Они обеспечивают свободный синтаксис, такой как:

public class CustomerValidator: AbstractValidator<Customer> {
    public CustomerValidator() {
        RuleFor(customer => customer.Surname).NotEmpty();
        RuleFor(customer => customer.Forename).NotEmpty().WithMessage("Missing first name");
    }
}

Он также имеет небольшую интеграцию с ASP.NET MVC, где вы можете добавить результат проверки в ModelState, как показано ниже:

public ActionResult Save(Customer customer) {
    var validator = new CustomerValidator();
    var results = validator.Validate(customer);
    results.AddToModelState(ModelState, "customer");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...