Какая библиотека проверки для ASP.NET MVC?
-
20-09-2019 - |
Вопрос
Я пытаюсь решить, какой подход к проверке следует использовать для нового проекта ASP.NET MVC.(И ничего себе, есть масса вариантов!)
Проект использует NHibernate, поэтому первое, что я рассмотрел, был валидатор NHibernate (из-за тесной интеграции с NHibernate).Однако, насколько я могу видеть, у такой тесной интеграции есть только пара преимуществ:
1) Схемы БД, сгенерированные NHibernate, будут включать детали проверки (напримердлины столбцов будут установлены на максимальное значение, допустимое при проверке).(На самом деле это меня не интересует, поскольку я генерирую схемы вручную.)
2) NHibernate выдаст исключение, если вы попытаетесь сохранить данные, которые не соответствуют спецификациям проверки.(Мне это кажется довольно избыточным, поскольку данные, по-видимому, уже будут проверены любым механизмом, который вы выберете, перед сохранением в любом случае)
Если у NHibernate Validator есть дополнительные преимущества, пожалуйста, дайте мне знать!
Другие библиотеки, о которых я немного читал, включают:
- Примечания к данным MS DataAnnotations
- Валидатор замка
- Что-то еще?
Я также подумывал об использовании xVal для обеспечения проверки на стороне клиента с помощью того же набора правил.Однако я слышал, что ASP.NET MVC v2 будет включать в себя что-то похожее на xVal (интеграция с jquery) из коробки?Сделает ли эта новая включенная функциональность некоторые другие избыточными?
Итак, я, по сути, прошу у людей совета, в каком направлении действовать здесь.Я не хочу внедрять какую-то конкретную схему только для того, чтобы отказаться от нее, когда другая технология станет доминирующей.
Что у вас сработало?Какой вариант, по вашему мнению, имеет / будет иметь преимущество?
Спасибо!
Решение
Я использовал Проверка беглости вместе с Проверка jQuery подключаемый модуль и все еще не могут найти ситуацию, с которой они не могут справиться.
Другие советы
Мне нравится xVal.
С его помощью вы можете очень легко реализовать проверку клиента и сервера.Также существует поддержка проверки столбцов (свойств) для объектов, которые вы хотели бы использовать.
Примечания к данным реализованный с помощью занятия с приятелями и Проверка клиента jQuery
Убедитесь, что вы используете Предварительный просмотр MVC 2
Возможно, вас это заинтересует делегирующий подход.Я был, потому что мне не понравилась идея xVal (решение, с которым я сейчас работаю) и тот факт, что оно, похоже, не подходит для сложных случаев проверки, которые пересекают несколько свойств одной и той же или даже разных структур классов.