2014-09-08 3 views
1

У меня изначально было приложение Nancy, в котором была пользовательская страница ошибок Errors \ 500.html. Внутри Ошибка папка У меня был файл Web.config, который удалил обработчик Нэнси, чтобы страницы ошибок могли обслуживаться.Application_Error() не вызывается, если Middleware генерирует исключение

Существовали два типа ошибок, которые я обрабатываемые:

  1. Произошла ошибка при инициализации Nancy Framework или модуль Нэнси будет обрабатываться с помощью Application_Error() в Global.asax.
  2. Любая ошибка при запуске маршрута Нэнси будет обрабатываться пользовательской реализацией Nancy IStatusCodeHandler.

После перехода к использованию Nancy.OwinApplication_Error() не быть больше называется.

Я попробовал несколько вариантов Configuration() в Startup.cs, такие как:

app.UseNancy(options => options.PassThroughWhenStatusCodesAre(HttpStatusCode.InternalServerError)); 

Но я не могу Application_Error() называться.

Я попытался создать пользовательский межплатформенное для обработки исключения, но это работает только в исключительных случаях во время работы маршрута и нет, если есть проблема загрузки модуля Нэнси:

app.UseNancy(options => options.PassThroughWhenStatusCodesAre(HttpStatusCode.InternalServerError)); 
app.Use<MyCustomExceptionMiddleware>(); 


Как я могу загрузите мои загружаемые страницы с ошибками (желательно, используя Application_Error())?

Использование Nancy 0.22.2, Owin 1.0 и Microsoft.Owin.Host.SystemWeb 3.0.0.

ответ

0

Приложение_Error() не вызывается при использовании OWIN.

+1

Кажется, что вызывается, если используете ASP (Katana) и Owin. Мой вопрос действительно сводится к тому, как я могу загружать страницы пользовательских ошибок (желательно, используя Application_Error())? – row1

Смежные вопросы