首页 文章

VS 2015 Update 1 - 声称我正在调试发布版本

提问于
浏览
82

更新到VS 2015更新1后,如果我运行Web项目(MVC),停止应用程序,然后尝试再次运行它,VS停止并弹出一个对话框声明

您正在调试<myproject.dll>的发布版本 . 使用Just My Code和使用编译器优化的发布版本会导致调试体验降级(例如,不会触发断点) .

问题是我没有运行发布版本 . 我'm clearly running the (same) debug build I just ran! Why does VS think I' m正在运行发布版本?

清理解决方案并重新运行会清除错误消息,因此某些内容会被清除 .

17 回答

  • 9

    来自Microsoft的一句话是,这是一个已知的问题(它最初是发给调试器团队的,但确定它是一个构建问题,现在已经在Project系统团队的手中了 . 在这个问题上还有其他的bug,它是额定优先级1,因此应该按照下一次更新的方式进行 . 虽然正如预期的那样,但是不会对它何时发布(或更新中的实际内容)做出承诺 .

    所以 . 它已知并正在进行中 . 至少在调试常规选项中关闭“启用我的代码”似乎是一个解决方案 .

  • 2

    正如@romanoza所述,Microsoft更新了(现在缺少的)Microsoft Connect错误报告(以前位于here,以防您能够在某处找到存档),并提供以下信息:

    取消选中调试 - >选项 - >抑制模块加载时的JIT优化设置(仅限管理)

    这是解决方法 . 他们接着说:

    我们建议人们不加以控制,因为取消选中它会改善性能和特定场景中我的代码的行为 .

    最后,承认:

    这是一个错误,它无法启用该设置,我们正在为这种情况进行修复,以防某些客户仍希望在启用该设置的情况下进行调试 .

    Update :根据评论,对于某些开发人员来说,现在看来该框默认为未选中,并且在某些情况下检查它可以解决完全相同的问题 . 很奇怪 .

  • 47

    我注意到这里的答案是不完整的,我遇到了同样的问题,它通过打开项目属性并在构建选项卡和调试配置 unchecking "optimize code" 下解决 . 您还应检查上面提到的配置管理器,以确保它也是合理的 . 答案来自这篇文章,他们应该得到信用:VS2015 Project no longer runs in debug mode

    谢谢,

  • 0

    清理(和重建)解决方案对我来说是一种临时解决方法 . 您也可以选择Debug> Options并取消选中 Suppress JIT optimization 复选框 .

  • 1

    我解决了在 Configuration Manger 窗口中将配置设置为Debug的问题,如answer中所述 .

    enter image description here

  • 0

    自从更新到VS2015 Update 1以来,我遇到了同样的问题 .

    发现一条关于微软's Visual Studio Forums which points to a bug report that'的类似报告与他们一起被提出here

    有各种解决方法,但我认为根本问题是IIS Express在调试结束时没有关闭 - 而不是因为未选中编辑和继续选项 . 我可以找到最快的解决方法,直到修复bug:

    • 右键单击托盘中的IIS Express图标并在调试后将其退出(感谢David Totzke提供有关错误报告的解决方法)

    不是很好,但我认为目前没有合适的解决方案 .

  • 1

    我遇到了同样的问题 . 我通过手动删除'bin'文件夹中的所有文件然后重建解决方案来解决问题 . 我不再得到这个对话了 .

  • 0

    就我而言,我已经将“配置管理器”中整个解决方案的“活动解决方案平台”从x86更改为任意CPU,修复了问题

  • 0

    检查解决方案的配置属性 . 我遇到了同样的问题,发现我的调试配置实际上正在构建一些带有发布配置的项目 .

  • 3

    我注意到在停止调试器后Visual Studio没有杀死iisexpress进程 . 手动杀死这个过程似乎为我解决了这个问题 .

    现在似乎已在Update 2中修复了此问题 .

  • 1

    似乎有很多解决方案,因为有人有问题,但在我的情况下,我不得不删除并重新添加项目参考 . 项目参考是在同一解决方案中的单元测试项目中 .

  • 6

    在我的情况下,错误消息是正确的 . 我跑了加载已发布版本的应用程序 . 所以我通过让应用程序加载调试版本来纠正它 .

    小学,我知道,我意识到我让自己看起来像个白痴 . 但有时问题正是报道的内容 .

  • 0

    很确定这已在Visual Studio 2015 Update 2中修复 .

    我曾经一直看到这个(每天多次),并且自更新到Update 2以来没有见过它 .

  • 12

    检查IIS项目URL是否实际指向您认为的位置 . 如有疑问,请单击“创建虚拟目录”按钮 .

    我最近遇到过这个问题,我在运行 生产环境 代码库的临时版本并将IIS中的文件夹重新命名为临时版本,这确实是在运行 生产环境 版本,而不是我试图调试的调试版本 .

  • 38

    对我来说,我在这个FileListAbsolute.txt文件中找到了3 \ Release \文件夹引用:

    C:\项目\ MyWebApp.Web \ OBJ \发布\ MyChildWebApp.Web.csproj.FileListAbsolute.txt

    他们是这样的:

    C:\项目\ MyWebApp.Web \ OBJ \发布\ MyChildWebApp.Web.csprojResolveAssemblyReference.cache

    C:\项目\ MyWebApp.Web \ OBJ \发布\ MyChildWebApp.Web.dll

    C:\项目\ MyWebApp.Web \ OBJ \发布\ MyChildWebApp.Web.pdb

    只需删除VS之外的那3行,然后重新打开解决方案即可解决问题 . 希望有所帮助 .

  • 10

    我已经尝试了所有的答案,对我来说一个是删除一些NuGet包,而不仅仅是引用,但删除包,在我的情况下PostSharp . 起初我尝试从所有项目中删除引用,但它不起作用,然后我只是从管理器中删除了包 . 我不知道究竟是什么原因,但这就解决了我的问题,希望它可以帮助那些人 .

  • 1

    重新启动Visual Studio . 这解决了2017年专业版的问题 .

相关问题