9

我正在尝试让托管编辑并继续工作(在 Visual Studio 2015 v14.0.25425.01 更新 3 中),它给了我一个可怕的对话框,“在以下情况下不允许更改:

  • 附加到不支持“附加时编辑并继续”的进程。

    1. 我在 Windows 10.0.10586、x64 上使用 IISExpress v10.0.14358.1000。
    2. 我在工具->选项中选中了“为网站和项目使用 64 位版本的 IIS express”。(虽然,我在 32 位 iisexpress 上也遇到了同样的错误)
    3. 我所有的代码都编译为“任何 CPU”
  • 被调试的代码已经优化

    1. 不,所有代码都是使用 DEBUG 常量集构建的,没有优化。
  • 正在调试的程序集作为域中性加载

    1. 不,我用 Process Explorer 检查过,程序集没有加载 DomainNeutral。
  • 正在调试的程序集是通过反射加载的。

    1. 对此不确定,但它是一个常规的 ASP.NET MVC 5 应用程序。
  • Intellitrace 事件和呼叫信息已启用。

    1. 不,在 Tools->Options->Intellitrace 中禁用了 Intellitrace。
  • 运行此程序的 .NET 运行时不支持编辑和继续。

    1. 没有把握。它是针对“.NET Framework 4.6.1”构建的,第一个符号加载是“'iisexpress.exe' (CLR v4.0.30319: DefaultDomain): Loaded 'C:\WINDOWS\Microsoft.Net\assembly\GAC_64\mscorlib\ v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll'"

其他一些事情:

  • 在“Web”项目设置中,“ASP.NET”和“启用编辑并继续”复选框均已设置(其他均未设置)。
  • 我在调试器设置中启用了“编辑并继续”。
  • 我在调试器设置中禁用了兼容模式。
  • 我尝试删除我的 .suo 文件和 .vs 目录,清理我的临时目录,进行完全重建

我还能尝试什么?

PS。如果 VS 调试器团队中的任何人正在阅读本文,我能帮个忙吗?请终止此对话框并将其替换为指示问题实际原因的内容。你有调试器和解决方案,你可以确定是哪一个导致了问题,你可以有一个按钮,只需单击一下即可修复问题。

4

1 回答 1

10

好的,为了后代。事实证明,问题是由环境变量引起的(大概是由探查器在某个时候配置的):

COR_ENABLE_PROFILING=1

删除此修复编辑并继续。

如果错误弹出窗口可以提及这一点,或者甚至检测到它并为您提供修复它的选项,那就太好了...

于 2016-10-07T19:54:31.603 回答