При использовании Polly в режиме отладки, если исключение выбрано, Visual Studio переходит в режим отладки при первой попытке. Я ожидал, что исключение будет выбрано только после последней попытки. Есть ли способ изменить это поведение?Использование Polly в режиме отладки
ответ
с информацией, я подозреваю, что, как указано в моем комментарии, что ваш VS сконфигурирован так, чтобы разорвать на бросок для DivideByZeroException
с.
В меню VS найти и открыть debug-> Исключения ...
окна, которое появляется, если контроль VS разрывает на так называемый первый шанс исключение для каждого типа исключения, что он распознает из коробки.
Исключения первого шанса - это когда выбрано исключение get и перед тем, как он будет выглядеть, если есть соответствующий обработчик. Таким образом, даже в конечном итоге более поздние обработанные исключения будут врываться в VS.
Это относится ко всем исключениям, отмеченным в столбце «Брошенный» окна.
К сожалению, флажки не являются тристатными, что означает, что даже если флажок parent не установлен, это не значит, что все его дочерние элементы также не отмечены.
Вы можете найти inquestion исключение в этом окне в разделе:
Common Language Runtime Исключения -> Система ->System.DivideByZeroException
.
Убедитесь, что он не установлен.
Хм .. этот флажок снят. Я снял флажок «Только мой код» в разделе «Параметры отладчика», и теперь он работает так, как я ожидал. VS не врывается в отладчик. Я ожидал от этого поведения наоборот. – AsValeO
- 1. Использование DLL в режиме отладки или выпуска?
- 2. Использование Polly для повторной попытки после HttpStatusCode.Unauthorized
- 3. Докер в режиме отладки
- 4. Оптимизация в режиме отладки
- 5. Deserialization в режиме отладки?
- 6. Развертывание в режиме отладки и режиме деблокирования
- 7. AWS Polly Integration SDKs
- 8. Как программно запустить mocha в режиме отладки?
- 9. Disable EnableOptimizations в режиме отладки
- 10. Curl CURLE_COULDNT_RESOLVE_HOST в режиме отладки
- 11. Application Insights в режиме отладки
- 12. Gzip ASP.NET в режиме отладки
- 13. Против отладки в режиме освобождения
- 14. IntelliJ - метки в режиме отладки
- 15. Код работает в режиме отладки
- 16. Перезапуск программы в режиме отладки
- 17. Работает только в режиме отладки
- 18. Запуск RSpec в режиме отладки
- 19. Ошибка Freeradius в режиме отладки
- 20. Запуск GridGain в режиме отладки
- 21. ASP.NET Timer работает только в режиме отладки
- 22. Unity 4.6, запустить в режиме отладки
- 23. Сбой программы в режиме отладки: «невозможно деактивировать»?
- 24. Visual Studio - LNK2005 ошибки в режиме отладки
- 25. Параллелизировать задачи с использованием polly
- 26. Почему удаление оператора приводит к отказу отладки в режиме отладки?
- 27. Результаты программы в автоматическом режиме и в режиме отладки различны
- 28. Messagebox работает в режиме отладки, но не в обычном режиме
- 29. OpenGL отображает в режиме деблокирования, но не в режиме отладки
- 30. Зачем сохранять отсчет в режиме отладки и в рабочем режиме?
На вашем изображении соответствующий код покрыт. Вы использовали 'Retry'? И даже если так, как вы определили, что всплывающее окно с исключениями в VS не произошло после n-й попытки, вы поставили точку останова перед тем, как исключение будет выбрано и удостовериться, что это был первый раз? Также блок try в коде: есть ли уловка? Если это так, вы не должны видеть всплывающее окно с исключением, если у вас нет конфигурации VS, чтобы разбить первые исключения (установить в меню Debug-> Exceptions ...) –
@FrankJ, Да, есть .Retry (2) after .Handle < >. Это исключение будет сброшено два раза после нажатия кнопки «продолжить». Так оно работает, но не так, как я ожидал. – AsValeO
Хорошо, если он не взорвется полностью после первого раза и идет еще 2 раза, это означает, что у вас установлен VS для «Break on throw» для этого типа исключения. Откройте следующий пункт меню: Отладка-> Исключения ... В окне, которое открывает элементы управления, какие типы исключений ломаются при броске. Однако флажки не являются tristate, то есть только потому, что флажок верхнего уровня не проверен, что все его подэлементы также не отмечены, найдите там исключение DivideByZeroException и убедитесь, что он не установлен! –