Debugging Visual Studio 16.3.10:看不到对象的属性

Debugging Visual Studio 16.3.10:看不到对象的属性,debugging,visual-studio-2019,local-variables,Debugging,Visual Studio 2019,Local Variables,我目前正在编写一些测试,但是断言失败了。当我试图通过探索对象来解决问题时,属性似乎是空的。显示的行数与类中定义的属性数相同。什么会导致如此奇怪的问题?我已经删除了所有bin和obj文件夹,并尝试清理重建 编辑:当我在检查\u tilefilter变量之前运行\u tilefilter.getType().getMembers()时,一切正常 我认为这是一种解决方法,但这不是我希望使用调试器的方式 什么会导致如此奇怪的问题?我已经删除了所有的垃圾箱和 obj文件夹并尝试清理重建 测试 我创建了一

我目前正在编写一些测试,但是断言失败了。当我试图通过探索对象来解决问题时,属性似乎是空的。显示的行数与类中定义的属性数相同。什么会导致如此奇怪的问题?我已经删除了所有bin和obj文件夹,并尝试清理重建

编辑:当我在检查
\u tilefilter
变量之前运行
\u tilefilter.getType().getMembers()
时,一切正常

我认为这是一种解决方法,但这不是我希望使用调试器的方式

什么会导致如此奇怪的问题?我已经删除了所有的垃圾箱和 obj文件夹并尝试清理重建

测试

我创建了一个新项目,其中包含一个名为\u TestClass的类。之后,我定义了一些成员变量、构造函数和成员方法。同时,我在主输出控制台上创建了该类的一个实例,并通过断点对其进行调试,然后通过QuickWatch监视该实例,结果是输出了该类的完整成员变量,而没有出现与您相同的问题

此外,我猜
\u tilefilter
只是一个类的实例,其中包含一些可访问的变量和方法

我的环境:Visual Studio社区16.3.10 Windows 10 Enterprise 1903

在检查前运行_tilefilter.getType().getMembers()时 _tilefilter变量一切正常

函数将捕获类中所有类型的公共成员,而不仅仅是类本身的成员以及默认类中的属性、方法等。无论如何,当您使用它时,它将始终列出数组

结论

因此,我认为这个问题可能与VS环境、设置、第三方软件包或项目本身有关。要解决您的问题,请尝试我的以下建议:

建议

  • 使用启动VS,然后打开项目进行再次测试。此模式将排除其他第三方软件包、插件、仅加载、纯、默认环境和服务
  • 尝试使用相同的文件创建一个新项目并对其进行测试
    如果它没有出现在新项目中,则可能是初始项目中的问题,请关闭VS实例,删除.VS隐藏文件夹(位于解决方案路径),重新打开项目,然后重试

    如果它也发生在新项目中,请尝试关闭。此外,请尝试关闭桌面上的所有第三方软件


    此外如果这些步骤不起作用,请共享类和代码来实例化它。希望它能帮助您。

    看起来您正在使用以下划线开头的变量?所有带有单下划线或双下划线的变量都保留用于语言实现。您不应该使用这些。我尝试在没有下划线的情况下重命名变量,但问题仍然存在。尽管这看起来仍然很奇怪,即使是对于发布版本。愚蠢的问题,你们在调试版本中调试吗?嗨,是的,我使用调试版本来调试