2010-02-20 4 views
0

Могу ли я использовать проверку IDataError и сервисного уровня вместе?asp.net mvc mixed validation

Я использую IDataError для своей модели. Тем не менее, мне нужно проверить состояние на моем уровне обслуживания. Если условие неверно, мне нужно дать пользователю сообщение проверки, чтобы пользователь мог вводить новые значения.

Возможно ли это? Что-нибудь, о чем мне нужно позаботиться, когда пытаешься это сделать?

+0

Насколько я знаю - это возможно. Однако нельзя добавить гораздо больше. :) –

ответ

0

Возможно, но не рекомендуется. Логика проверки должна быть в одном месте. DanaAnnotation реализует это очень хорошо таким образом, что проверка на стороне сервера и клиента настраивается вместе. Но, как я уже сказал, вы можете отделить любую часть проверки на любом уровне, который вы хотите, но в этом случае, если изменение бизнес-требований должно отслеживаться на любом уровне, в результате вы теряете время.

+0

но, что, если результат известен только позже. вот сценарий: 1. проверить, действительно ли все входные данные 2. выполнить некоторую обработку данными, но данные не обновлены в базе данных 3. на основе обработки, выполненной на шаге 2, проверьте некоторые условия 4. if true продолжить работу с базой данных, иначе показать ошибку Какова наилучшая практика в этом сценарии? – maX