调试时无法查看变量内容 ASP.NET 5 IIS Express

Cannot watch contents of variables when debuggin ASP.NET 5 IIS Express

当我调试 ASP.NET 5 网络应用程序时,它遇到了我的断点,但我无法查看本地创建的变量的内容。

来自 startup.cs 的示例代码使用空项目作为模板:

public void Configure(IApplicationBuilder app)
{
    app.UseIISPlatformHandler();
    var dummy = DateTime.Now;

    app.Run(async (context) =>
    {
        await context.Response.WriteAsync("Hello World! " + dummy);
    });
}

当我在 "app.Run(...." 上放置断点时,它会到达断点,但我看不到变量 dummy 的内容。如果我将 dummy 添加到 Watch,它会显示 "error CS0103: The name 'dummy' does not exist in the current context"。 虽然我可以看到 DateTime.Now 的内容,但每次悬停它时都会给我准确的日期和时间。 当我在 MVC 控制器中放置一个断点并观察那里的变量时,也会发生同样的情况。

我正在学习 Pluralsight 课程,我在学习该课程时创建的项目也有这个,以及课程附带的示例文件。

在调试期间 VS2015 附加到 dnx.exe 进程 在视频中,我看到 VS2015 附加到 IISExpress.exe 进程。但是那门课程是从十一月开始的。 2015 年也许同时发生了一些变化。

重启机器没有帮助。

这是我的第一个问题,如果需要更多信息请告诉我,我会尽力提供。

我找到了答案。有时一夜的休息会产生奇迹。

我在 'error CS0103: The name does not exist in the current context debug' 上进行了 Google 搜索。如果没有 'debug' 这个词,您会得到很多没有帮助的结果。 我找到了以下网站:https://connect.microsoft.com/VisualStudio/feedback/details/1038150/visual-studio-2015-debugger-doesnt-recognize-a-variable

答案是:菜单 > 调试 > 选项,"Use Managed Compatibility Mode"。检查了那个选项,它对我有用。 也适用于我正在从事的项目。

为此搜索了一整天。启用使用托管兼容模式就可以了。它允许我快速查看我的 class 的内容,这样我就可以看到我的一个 get 方法正在引用自身而不是 class 属性。愚蠢的打字错误破坏了我的申请。 所以我同意这是一种解决方法,并不能解决根本问题,但它有助于找到它!