【问题标题】:Locals missing during debugging in Visual Studio 2015在 Visual Studio 2015 中调试期间缺少局部变量
【发布时间】:2016-04-06 15:34:17
【问题描述】:

问题
Locals 在调试时只显示this 变量,其他局部变量在LocalsWatch 中不可用,但可以在中间窗口 中重新计算在 Visual Studio 中

简介
我正在为我正在编写的一些代码调试 Xunit 测试。我正在测试的库以 ASP.NET Core RC1 为目标。这是我的project.json

{ "authors": [ "Matthew Abbott" ], "commands": { "test": "xunit.runner.dnx" }, "description": "Provides tests for the Fx.Content.Composer package", "dependencies": { "xunit": "2.1.0-rc1-build3168", "xunit.runner.dnx": "2.1.0-rc1-build204", "Fx.Content.Composer": "" }, "frameworks": { "dnx451": { }, "dnxcore50": { "dependencies": { "System.Runtime": "4.0.21-beta-23516" } } }, "licenseUrl": "", "projectUrl": "", "tags": [ "" ], "version": "1.0.0-*" }

在调试单元测试时(我正在使用 Visual Studio 的内置测试功能),我可以设置断点,但 Locals/Watch 窗口不允许我检查局部变量声明。我也没有得到那些局部变量的变量工具提示。

如果我将我的语句复制并粘贴到 Intermediate 中,它们会被添加到作用域中,但我无法立即轻松调试。

我尝试过的事情

  • 确保我在调试模式下编译
  • 禁用 JIT 优化
  • 重置我的 Visual Studio 设置

注意事项

  • 我最近安装了 Visual Studio 2015 Update 2
  • 我已经多次重启 IDE 都没有成功
  • 我已经多次重启了我的机器,但都没有成功
  • 未明确绑定到单元测试调试会话 - 当我按 F5 运行时,它们也会在那里失败

任何帮助将不胜感激!

更新 根据 Victor 的评论,我尝试从该单元测试逐步进入一个方法,最初一个参数在范围内可用,但进一步定义的变量不可用。

【问题讨论】:

  • 我以前见过这个。在我的例子中,只有第一个断点被击中的方法缺少本地人。如果我采取另一种方法,当地人就会出现。如果是这种情况,那么您可能必须重新安装 VS - 这对我有用
  • @VictorHurdugaci 我尝试单步执行一个方法,最初我的参数在 Locals 中可用,但如果我单步执行,则本地声明不可用。我附上了更新的屏幕截图
  • 在调试或发布时运行?
  • 如上所述 - 我一直在检查我是否处于调试模式。只需重新安装 VS 并查看是否可以解决它...
  • 重新安装没有解决问题:-/

标签: debugging visual-studio-2015 asp.net-core dnx xunit


【解决方案1】:

更新:请注意,此答案仅适用于 Visual Studio 2015 更新 2。如果您在 Visual Studio 的任何其他版本中缺少本地人,则可能会发生其他情况。 您只能在 Visual Studio 2015 Update 2 上安装修补程序。 Visual Studio 2015 Update 3 及更高版本已安装此修补程序。

原答案:

这看起来像是 Visual Studio 2015 Update 2 中引入的错误。本质上,调试器无法检查动态模块中的局部变量。我们今天发布了一个修补程序。您可以下载补丁here。该补丁的文档是here。如果补丁不能解决您的特定情况,请告诉我。

谢谢!

-帕特里克·纳尔逊

【讨论】:

  • 自更新 2 以来我遇到了 OP 的问题,但甚至无法在即时窗口中看到变量(虽然他似乎可以)。这个补丁为我解决了这个问题!
  • @Chris 如果我在那里重新声明它们,我只能获得中间变量,如果我不这样做,它们就不会评估。已安装补丁但尚未测试
  • 我在 VS 2015 Update 3 中遇到了同样的问题,无法为其安装 Update 2 补丁。
  • 是的,我也有更新 3,无法安装此修复程序。真的很烦
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-28
  • 1970-01-01
  • 2015-11-15
  • 1970-01-01
  • 1970-01-01
  • 2015-10-27
相关资源
最近更新 更多