可以将Visual Studio 2015本地/监视/自动窗口配置为像以前的版本一样反映继承吗?

wha*_*ame 20 c# inheritance visual-studio

在旧版本的VS中,locals/watch/autos/etc窗口将反映您正在查看的任何内容的继承树:

旧的和良好的行为

这样做的好处是,您只能预先看到本地添加的变量,无论您处理的是什么,这几乎都是我感兴趣的.

现在,它将它展平并将所有内容放在一个大的列表中:

新方法

其中,如果你正在处理任何像Windows Forms这样的东西,或者正在使用深度继承树继承任何东西,这意味着你不得不经历大量垃圾,这些垃圾永远不会很重要,每次你都需要查看一些东西.

从本质上讲,VS2015似乎是这样做的:在Visual Studio的Watch窗口中展平继承的成员?并使它成为唯一的选择,我想做相反的事情.当然,偶尔快速深入继承树是很好的,但我想只经常潜水浅1000倍.

在General Debugging设置中,我没有看到任何明显控制此行为的内容,是否还有其他方法可以切换行为?

Iva*_*oev 14

幸运的是有一个.

namespace Test
{
    public class A
    {
        public int Foo { get; set; }
    }

    public class B : A
    {
        public int Bar { get; set; }
    }

    class Program
    {
        static void Main(string[] args)
        {
            var a = new B();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

在此输入图像描述

在此输入图像描述

文档(不太有用):

使用旧版C#和VB表达式计算器

调试器将使用Visual Studio 2013 C#/ VB表达式计算器而不是Visual Studio 2015基于Roslyn的表达式计算器.