Проверенная модель MVC с использованием атрибутов DataAnnotations работает очень хорошо и значительно ускоряет разработку. Однако есть много случаев, когда валидация не может быть обработана на уровне представления приложения, например, проверка базы данных на уже существующие значения уникального свойства.ASP.NET MVC, решение для передачи сообщений проверки из проверки уровня сервиса для просмотра модели
Я ищу решение этой проблемы, которая удовлетворяет следующим требованиям:
- Совместимость с Ninject (и другими методами DI).
- Не сломать SoC. Сервисный уровень должен оставаться полностью не осведомленным о слое презентации.
- Автоматический. Вызывает минимум дополнительного кода в (по крайней мере) уровне представления. Подумайте
[ValidateServiceLayer]
о методе действия. - Придерживается принципа сушки. Минимальное копирование кода.
- Назначает сообщение проверки правильному свойству (при необходимости).
- Позволяет добавлять другие сообщения проверки, как до, так и после запуска.
Дополнительные точки для этих функций:
- Изящно ловит исключения и выводит пользователю сообщение об ошибке дружеский.
- Простота использования. (Пакет NuGet?)
У меня есть идеи, как реализовать это самостоятельно, но прежде чем я пойду изобретать колесо, я хотел бы знать, был ли он уже усовершенствован кем-то другим. Кто-нибудь сталкивается с чем-то подобным?
** [Вы ищете удаленное подтверждение? Нет необходимости добавлять Nuget.] (Http://stackoverflow.com/a/18104060/2015869) ** –
@PKKG: Интересно, что раньше я не запускал Remote Validation. Я чувствую, что это не соответствует моей цели, но я должен изучить ее немного ближе, прежде чем я могу быть уверен. Во всяком случае, может быть весьма полезно в других обстоятельствах! –