2016-04-29 67 views
0

调试MVC6应用程序时出现奇怪的情况。VS2015:已评估的表达式,但不支持变量

在我休息一下以下代码设置启动::配置()方法:

var junk = app.ApplicationServices.GetRequiredService<IOptions<AntiforgeryOptions>>().Value.CookieName; 

我试图查找该应用程序特定的防伪cookie名称。

该表达式评估...但是当我试图在Watch窗口中查看'junk'的值时,我收到一条错误消息,指出'junk'在当前上下文中不存在。

将鼠标悬停在代码窗口中的'垃圾'上显示...什么也没有。就好像变量不存在一样。

OTOH,如果我在观察窗口中评估完全相同的代码,则cookie的名称将显示为结果值。

我加入了初始呼叫后的几行:

var junkLen = junk.Length; 
var junk2 = junk; 

这些指令的执行没有任何问题,要么,但你不能在监视窗口中检查他们,因为他们不存在:)。

我从来没有见过这样的事情。对发生什么事情有任何想法?

+0

你不是在“释放”运行意外,是吗? – Erresen

+0

没有。但是使用一些不同的搜索词我找到了一个解决方案 –

回答