我刚开始使用 Visual Studio 2015,发现它在调试自动实现的属性时的行为与 VS2012/VS2013 不同。
假设我在类中定义了一个属性:
public int MyProperty { get; set; }
即。一个自动实现的属性,其中的 getter 和 setter 由编译器有效生成。
我稍后可能会引用此属性,例如作为方法调用的一部分:
{
DoSomeStuff(MyProperty);
}
如果我想调试对 DoSomeStuff
的调用并在该行放置一个断点,然后等待它被命中并 F11 进入调用,VS2015 调试器现在进入 getter对于 MyProperty
(在以前的版本中,对于自动实现的属性,它只会忽略 getter 和 setter)。
我找到了一个 blog post它描述了将断点放在自动 getter 和 setter 上的能力作为一项新功能,我可以看到这在某些情况下可能会有用。但是,就我而言,我对设置断点或单步执行这些方法不感兴趣,尤其是因为我们的代码库有许多自动实现的属性并且对它们的访问通常是嵌套的(例如 DoSomeStuff(X.Y.Z)
)。
简而言之,是否可以在 VS2015 中为自动实现的属性禁用新的 Step Into 行为,如果可以,如何禁用?
(我注意到调试选项中有一个“跨过属性和运算符”复选框,但我不想跨过所有属性 getter/setter,只是那些自动实现的属性。)
最佳答案
转到 VS2015 选项 -> 调试 -> 常规并勾选“跳过属性和运算符”。
关于c# - 在 VS2015 中,如何为自动实现的属性禁用 Step Into?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39041188/