Где ловить исключения из настроенного ModelBinder - PullRequest
3 голосов
/ 15 декабря 2009

У меня есть настроенный ModelBinder, который связывает сеть с объектом, используя код, подобный этому "

    [ModelBinder(typeof(CustomizedModelBinder))]
    public class Widget{ ... }

Этот связыватель моделей может генерировать исключения, и где я должен добавить код, чтобы перехватить эти исключения? Заранее спасибо!

1 Ответ

7 голосов
/ 15 декабря 2009

С точки зрения дизайна для связывателя модели лучше добавлять ошибки модели, а не выдавать исключения:

ModelState.AddModelError("Phone", "Phone number is invalid.");

Таким образом, позже в своем действии вы можете проверить, действительна ли модель:

if (!ModelState.IsValid)
{
    ...
}
...