Visual Studio Debugger 未在鼠标悬停时显示变量详细信息,因为它“脱离上下文”

use*_*285 3 debugging scope watch visual-studio visual-studio-2013

我在 Visual Studio 2013 中有一个 F# 程序,它在一开始就创建了一个对象。我想调试代码并在许多不同的时间点查看此对象的值。我以前可以通过在调试模式下将鼠标悬停在变量上来做到这一点,但由于某种原因,我不再能够做到这一点。当我添加手表时,它给了我错误:

由于评估时出现问题,此项目的值已过时。将光标悬停在刷新按钮上以获取详细信息。旧值:名称“MyData”在当前上下文中不存在。

然后将鼠标悬停在刷新按钮上:

此表达式的值可能不正确。无法对其进行评估,因为:“当前上下文中不存在名称“MyData””单击此按钮现在尝试重新评估。

更奇怪的是,我知道该变量有效,因为它作为参数传递给其他外部函数,而且我可以看到这些辅助函数中的所有值,但不能在全局范围内看到!有谁知道发生了什么?

小智 12

转到项目的属性并取消选中“优化代码”。重建你的代码。如果问题仍然存在,请重新启动 Visual Studio。