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

Невозможно установить контрольные точки в автозапуске? Зачем?

По-видимому, VS 2008 не позволяет установить точку останова только на установщике авто-свойства.

т.е. если я определяю авто-свойство следующим образом:

    public int CurrentFramesize
    {
        get; 
        protected set;
    }

а затем попытайтесь установить точку останова на линии сеттера, все авто-свойство превратится в контрольную точку-красную.

Это нормально работает для нормальных свойств, поэтому любая идея, почему авто-свойства получают эту специальную (ограничительную) обработку? Являются ли они более чем просто синтаксическим сахаром для нормальных свойств со скрытым полем поддержки?

4b9b3361

Ответ 1

Использование Visual Studio 2008, 2010, 2012:

  • Перейдите в окно точки останова
  • New- > Break at Function...
  • Для получения, тип: ClassName.get_CurrentFramesize()

    Для набора введите: ClassName.set_CurrentFramesize(int)

При достижении точки останова вы получите "Нет источника", но вы получите местоположение вызова в стеке вызовов.

Я нашел это решение здесь: http://social.msdn.microsoft.com/Forums/en/vsdebug/thread/b1dd0dc3-e9c1-402a-9c79-a5abf7f7286a

См. также: Отладка автоматических свойств

Ответ 2

Короткий ответ: эта функция ошибка оказалась на полу режущей комнаты для VS2008.

(Дольше answer - hat tip @jdk)

Все, что у нас есть, - это смутное обещание, что это рассматривается для vNext.

Ответ 4

Нет, вы не можете установить точку останова на них, но тогда что бы вы проверили? Переменная для хранения авто-имущества назначается только во время выполнения, и поэтому для отображения/доступа отладчика нет переменной.