.NET: Как получить доступ к объекту ExceptionContext из объекта Exception - PullRequest
2 голосов
/ 11 февраля 2010

Я пишу собственный метод обработки ошибок и передаю ему объект Exception. Мне нужно иметь доступ к объекту ExceptionContext этого исключения, чтобы я мог установить для свойства значение true, прежде чем выполнить представление Error. Кто-нибудь знает, как добраться до ExceptionContext, учитывая только объект Exception?

Для справки, мне нужен объект ExceptionContext, чтобы я мог выполнить следующий код:

filterContext.ExceptionHandled = true; // filterContext is of type ExceptionContext
this.View("Error_partial", filterContext.Exception).ExecuteResult(this.ControllerContext);

Я читал в Интернете, что ExceptionHandled должен быть установлен в значение true, или следующее утверждение вызовет желтый экран смерти, а не дружественную страницу "Error_partial", которую я хотел бы. Поэтому важно, чтобы я мог получить доступ к ExceptionContext из Exception. Любая помощь будет принята с благодарностью.

Ответы [ 2 ]

0 голосов
/ 20 марта 2012

Очень поздно на вечеринку, и я предполагаю, что вы уже решили это, но для других:

Вы можете создать класс, реализующий IExceptionFilter, и добавить его в коллекцию фильтров для вашего контроллера или в GlobalFilterCollection. Поместите вашу собственную логику обработки исключений в метод класса OnException, который принимает аргумент ExceptionContext. Это объект, свойство ExceptionHandled которого должно быть установлено на true, чтобы избежать желтого экрана смерти.

0 голосов
/ 11 февраля 2010

Если у вас уже нет существующего объекта ExceptionContext;

Вы должны создать его и передать ему объект Exception, затем он создаст ExceptionContext на основе объекта Exception, который вы ему передали.

Смотрите здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...