В ASP.NET MVC, почему бы мне не использовать HandleError на базовом контроллере и покончить с этим? - PullRequest
2 голосов
/ 19 мая 2010

Поскольку HandleError наследуется производными контроллерами, почему бы мне просто не создать (или не иметь) базовый контроллер и не применить к нему HandleError, чтобы любые контроллеры, которые наследуются от базового контроллера, также автоматически обрабатывались?

А затем я бы добавил переопределение HandleError на контроллеры и отдельные действия.

Может кто-нибудь придумать причину, по которой я не хотел бы применять HandleError к базовому контроллеру?

Ответы [ 2 ]

1 голос
/ 22 июля 2011

Я знаю, что этот вопрос старый, но если вы сейчас используете MVC 3, я бы предложил вместо этого использовать глобальный фильтр. См. Раздел «Глобальные фильтры» поста Скотта Гатри здесь

0 голосов
/ 20 мая 2010

Для меня HandleError на базовом контроллере похож на окружение всего вашего приложения блоком try {} catch {}. Вы фактически прекратили обрабатывать исключения, такие как исключения, которые сделали их нормальным явлением в вашем приложении.

Вы можете «поймать» только то, что, как вы знаете, может случиться, а не все, что может случиться.

...