【问题标题】:Breakpoints are not hit. I get "breakpoint will not be hit, the code source is different" message没有命中断点。我得到“断点不会被命中,代码源不同”消息
【发布时间】:2016-10-25 09:49:18
【问题描述】:

使用 VB 处理旧的 ASP.Net 项目。我正在使用 VS2012。

调试器不处理特定类的断点(目前其他类没有问题)。

当我在未更改文件的情况下运行应用程序时,它的断点被正确命中。如果我在此文件中更改任何内容(甚至添加 \n 字符),下次我运行该应用程序时,它的断点将不再被命中,我可以在断点下阅读通常的警告说“断点不会被命中,因为源代码不同”。

如何让调试器接受我对该文件的更改?为什么它只对这个特定文件造成问题?

我尝试按照其他类似帖子中的建议删除我的 ASP 临时文件。没有帮助。

重建也无济于事。

提前谢谢

【问题讨论】:

  • 我们不久前在一个 C# 项目中遇到过这个问题,编译该项目似乎可以解决其他用户的问题。
  • 尝试清理并重建解决方案
  • 这是一个 ASP.NET 项目。没有清洁它的选项。重建它并不能解决问题。
  • 我认为可以工作的课程与不工作的课程的设置方式相同?如果可以的话,我的第一个想法是重新创建课程。
  • 我猜这是 file 问题而不是 class 问题。确保编译器生成的文件被写入正确的位置。或者,从另一面来看,确保正在执行的文件是上次编译生成的文件。

标签: c# asp.net vb.net debugging visual-studio-2012


【解决方案1】:

解决方法一:在断点处右击->位置->允许源代码与原版本不同(打勾)。

解决方案 2:如果上述解决方案不起作用,请转到调试->附加到进程,然后附加当前 Web 项目运行的端口/服务。 希望这可以帮助。

【讨论】:

  • 为了完整起见,有没有办法默认开启“允许源代码与原始版本不同”?而不必在您使用的每次休息时都设置它
【解决方案2】:

我会确保您当前已将配置管理器设置为“构建”您正在进行更改的 ASP.NET 项目。这位于构建 -> 配置管理器下。

然后重建解决方案/项目。

【讨论】:

    猜你喜欢
    • 2015-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-30
    • 2018-01-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多