Visual Studio 2015更新2后无法找到范围内的变量

4
我有一个.NET Core 项目和一个 Xunit 项目在同一个解决方案中。突然间,我在调试方面遇到了很大的问题。这似乎与昨天安装更新2同时发生。当调试并命中断点时,只有少数几个参数显示在本地变量、自动变量、监视或立即窗口中,并且可以访问。我认为,但没有完全验证,我可以访问的变量是全局变量和作为参数传递给函数的变量。例如,看一下这个测试的一部分:
 public void UniTest4()
        {
            var s = @"{
                ""id"": ""0001"",

                ""type"": ""donut"",
                ""name"": ""Cake"",
                ""ppu"": 0.55,
                ""batters"":
                    {
                            ""batter"":
                            [
                                { ""id"": ""1001"", ""type"": ""Regular"" },
                                { ""id"": ""1002"", ""type"": ""Chocolate"" },
                                { ""id"": ""1003"", ""type"": ""Blueberry"" },
                                { ""id"": ""1004"", ""type"": ""Devil's Food"" }
                            ]
                    },
                ""topping"":
                    [
                        { ""id"": ""5001"", ""type"": ""None"" },
                        { ""id"": ""5002"", ""type"": ""Glazed"" },
                        { ""id"": ""5005"", ""type"": ""Sugar"" },
                        { ""id"": ""5007"", ""type"": ""Powdered Sugar"" },
                        { ""id"": ""5006"", ""type"": ""Chocolate with Sprinkles"" },
                        { ""id"": ""5003"", ""type"": ""Chocolate"" },
                        { ""id"": ""5004"", ""type"": ""Maple"" }
                    ]
            }";

            var token = yayson.MakeToken(s);

当我在最后一行中断点时,无法访问变量"s"。我已经寻找了其他类似问题的解决方案,并且看到一些建议说这可能是由于使用特定编译器优化造成的。但是对于我来说真的是这种情况吗?下面是我的Xunit项目的构建设置。我的业务项目看起来相同,除了顶部复选框被选中(在VS更新之前也是这样,工作得非常好)。

Project settings

我该怎么做才能再次找到本地变量?

1个回答

5

1
哇 - 他们怎么会在这种事情上退步了呢???感谢您找到这个问题。我似乎记得曾经报告过类似的问题,他们建议我检查“遗留表达式求值器”。但是这个复选框对我有用。 - Simon_Weaver
1
非常感谢,这个问题确实让我和一个同事都很困扰。这个技巧真的救了我的一天 :) - Søren Reinke

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接