VS Express 2013 для Windows не останавливается на (асинхронной) строке, которая выдает исключение

1

Я очень новичок в асинхронном программировании. Когда генерируется исключение, я использую Visual Studio, чтобы остановиться на ошибочной строке. В коде, подобном приведенному ниже, отладчик обычно останавливается и выделяет строку 2

int[] array = new int[] { 0, 1, 2 };
int throwsException = array[3];

Но когда в методе, вызываемом с await, возникает исключение, я полностью теряюсь, и отладчик просто останавливается на линии ожидания.

public async void ThrowException() {
    int[] array = new int[] { 0, 1, 2 };
    int throwsException = array[3];
}

// Debugger stops here
await ThrowException();

Проблема в том, что у меня есть метод ожидания, который вызывает ошибку где-то между 100-м и 200-м раз, когда он вызывается. Я не знаю, как определить проблему в отладчике! Есть ли способ легко идентифицировать проблемную строку кода?

Теги:
windows-store-apps
windows-8
windows-phone-8

1 ответ

2
Лучший ответ

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

http://msdn.microsoft.com/en-us/library/038tzxdw.aspx

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

Или вы можете обернуть свой код внутри функции "public async void ThrowException()" с помощью блока try/catch и поставить точку останова внутри catch

  • 0
    Спасибо за подсказки! Я зашел в меню DEBUG, нажал «Исключения» и просто поставил галочку напротив каждого флажка. Теперь код останавливается на ошибке! Здорово!
  • 1
    ахахахахах да, я обычно тоже так делаю, просто не забудь снять флажки, иначе это будет боль! Теперь обновите сообщение, исключение, которое вы обнаружили, чтобы у других людей с такой же проблемой было больше информации для работы.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню