Свободная проверка и аннотация данных
Каковы оперативные различия между этими двумя пакетами проверки при использовании для проверки ASP.NET MVC? Кажется, у них похожие объекты, вплоть до имен их объектов. Связано ли одно с другим? Каковы их различия? Каким образом эти различия обозначают различные варианты использования?
Ответы
Ответ 1
Я предпочитаю Свободную Валидацию:
- Это дает мне намного лучший контроль над моими правилами валидации
- Выполнение условной проверки для разных свойств намного проще по сравнению с аннотациями данных
- Это отделяет валидацию от моих моделей просмотра
- Модульное тестирование намного проще по сравнению с аннотациями данных
- Он имеет отличную поддержку проверки на стороне клиента для большинства стандартных правил проверки
Ответ 2
Я явно предпочитаю аннотации данных, потому что...
- все правила проверки могут быть сконфигурированы в одном месте в коде (внутри класса метаданных модели), и их не нужно повторять где-либо еще.
- Существует отличная поддержка для проверки на стороне клиента (опять же - без повторения правил проверки!) при использовании атрибутов аннотации данных.
- Атрибуты аннотации данных можно проверить, чтобы убедиться, что они есть.
- Есть хорошие дополнительные атрибуты проверки, созданные сообществом (например, Расширения аннотаций данных).