调试自动属性

时间:2010-12-10 10:57:56

标签: c# visual-studio properties breakpoints

有没有办法在自动实现的属性中设置setter / getter的断点?

int Counter { get; set; }

除了将其更改为标准属性(我这样做,但要做到这一点,我必须更改并重新编译整个项目)

5 个答案:

答案 0 :(得分:212)

使用Visual Studio 2008,2010,2012,2013:

  1. 转到“断点”窗口
  2. 新 - >打破功能......
  3. 对于get,请输入:ClassName.get_Counter()

    对于set,请输入:ClassName.set_Counter(int)

  4. 当遇到断点时,你会得到一个“No Source Available”,但是你将获得调用堆栈中的调用位置。

    我找到了这个解决方案here on MSDN

答案 1 :(得分:7)

如果我是你,我会暂时使该属性成为内部字段支持的标准属性...设置断点,然后您可以在之后将其更改。

答案 2 :(得分:7)

这个问题非常陈旧,但值得一提的是它只适用于VS 2015.

https://blogs.msdn.microsoft.com/visualstudioalm/2014/11/14/set-breakpoints-on-auto-implemented-properties-with-visual-studio-2015/

class X {
  public string name {
    set;
    get; // setting a breakpoint here will break in VS 2015!
  }
}

答案 3 :(得分:6)

在Visual Studio 2017上:

将鼠标悬停在“设置”字上->右键单击->断点->插入断点

之前:

Before

之后:

After

答案 4 :(得分:0)

设置您设置属性或获取属性的断点,别无他法。

您可以通过查找所有参考选项

来执行此操作

由于它只存储值,并且在setter部分没有任何代码,所以你调试了什么?