调试 MVC6 应用程序时遇到奇怪的情况。
在 Startup::Configure() 方法中,我在以下代码上设置了中断:
var junk = app.ApplicationServices.GetRequiredService<IOptions<AntiforgeryOptions>>().Value.CookieName;
我正在尝试查找特定于应用程序的防伪 cookie 名称。
表达式计算...但是当我尝试在监视窗口中查看“垃圾”的值时,我收到一条错误消息,大意是“垃圾”在当前上下文中不存在。
将鼠标悬停在代码窗口中的“垃圾”上会显示...什么也没有。就好像变量不存在一样。
OTOH,如果我在监视窗口中评估完全相同的代码,cookie 的名称将显示为结果值。
我在初始调用后添加了几行:
var junkLen = junk.Length;
var junk2 = junk;
它们的执行也没有任何问题,但是您无法在 Watch 窗口中检查它们,因为它们不存在 :)。
我从来没有见过这样的事情。有什么想法吗?