Подтвердить что ты не робот

Условные точки останова в стеке вызовов

Можно ли указать точку останова в Visual Studio 2010, которая отображается только в том случае, если вызывающие методы в стеке вызовов удовлетворяют определенным условиям? Например, и, скорее всего, имя метода.

Я отлично ищу решение в самой Visual Studio, например, условную точку останова, но я соглашусь на то, что имена методов тестируют в стеке в коде и имеют закодированную точку останова.

То, что я пытаюсь добиться, - это вырезать вызовы от конкретного вызывающего.

4b9b3361

Ответ 1

Щелкните правой кнопкой мыши точку останова, выберите "Условие" и используйте что-то вроде этого:

new System.Diagnostics.StackTrace().ToString().Contains("YourMethodName")

Ответ 2

класс StackTrace должен предоставить вам то, что вам нужно.

StackTrace stackTrace = new StackTrace();           
StackFrame[] stackFrames = stackTrace.GetFrames(); 

Ответ 3

Отказ от ответственности - я связан с OzCode

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

Добавить условную точку останова

Редактирование условной точки останова