ASP.NET Контроллер MVC. OnException, не будучи названным

См. Этот блок (с помощью CreateMutex): UiApp

Кроме того, на этой странице вы можете прочитать о преимуществах и недостатках этой работы с различными методами (mutex, FindWindows, ..). .).

У этого устройства есть решение, позволяющее активировать предыдущий экземпляр приложения при его обнаружении.

С уважением и извините за мой плохой английский.


Нефтали-Герман Эстевес-

9
задан Fredrik Mörk 6 June 2009 в 18:45
поделиться

4 ответа

Если я правильно понял ваш вопрос, ваше исключение должно быть помечено как «обработанное» в вашем OnException. Попробуйте следующее:

filterContext.ExceptionHandled = true;
10
ответ дан 4 December 2019 в 15:25
поделиться

Примените к классу атрибут [HandleError] .

-1
ответ дан 4 December 2019 в 15:25
поделиться

В документации MSDN ( http://msdn.microsoft.com/en-us/library/system.web.mvc.controller.onexception.aspx ) указано, что метод OnException «вызывается, когда в действии возникает необработанное исключение»

Таким образом, похоже, что он может сработать только тогда, когда необработанное исключение происходит в методе действия.

Я создал новый контроллер с одним действием Index. . И метод OnException действительно выполняется. Я также попытался выбросить SystemException (), и метод OnException также сработал.

    public ActionResult Index ( )
    {
        throw new NotImplementedException ( );
    }
2
ответ дан 4 December 2019 в 15:25
поделиться

Вы вызываете действие контроллера из модульного теста или через ASP.NET? Если вы вызываете метод непосредственно в тесте, скажем, через NUnit, то OnException не сработает: среда тестирования обработает исключение и превратит его в неудавшийся тест.

1
ответ дан 4 December 2019 в 15:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: