2

我有 ac#asp.net 网络应用程序。数据库层中的断点不再停止执行,但 UI 层中的断点仍然可以正常工作。任何人都可以猜测为什么会发生这种情况吗?

我已经检查了所有常见的嫌疑人(所有项目的调试版本都已启用)并重新编译了解决方案中的所有项目......

4

6 回答 6

1

感谢各位的回复和想法——我已经尝试过所有这些或它们的变体。

我认为这一定是一个非常微妙的 VS 错误。一位同事建议我将我试图打破的功能公开(以前“未定义”,因此隐含私有),然后再试一次。我这样做了,断点开始受到打击。然后我删除了 public 关键字并继续命中断点。不知道为什么这解决了它,但它确实解决了。

谢谢你的帮助!

于 2008-09-12T22:50:56.343 回答
1

几个建议。第一个是检查源代码行中断点的状态。它是一个实心的红球吗?如果不是,它通常表明有问题的文件不是用于构建的文件。其次 - 查看模块视图并查看已加载的模块和符号。你可能会发现这不是你所期望的。

至于为什么——我不知道!

缺口

于 2008-09-12T23:01:43.760 回答
1

我会确保 UI 层引用了适当的“调试”.dll。我还考虑在调试时按CTRL++ ( ALT)以查看是否为 BLL 和 DAL 加载了符号。如果没有,则 Visual Studio 无法找到该文件。调试文件是否与“模块”窗口中引用的 调试文件位于同一目录中?UModules View.dlls.PDBs
.PDBs.dlls

于 2008-09-12T22:43:31.773 回答
1
  • 将调试器附加到 ASP.NET 进程并单击模块窗口。确保为要调试的程序集加载调试符号。
  • 确保 UI 引用的是调试程序集,而不是发布程序集。
  • 确保 .PDB 文件位于 /bin/debug/ 目录中
  • 确保在附加调试器之前重建整个解决方案。
  • 如果数据层在单独的解决方案中,请将项目添加到 UI SLN(您不需要添加引用,那些应该已经建立或者您的代码不会编译),以便调试器可以拉起完整的代码。
于 2008-09-12T22:45:53.407 回答
0

您是否尝试过在重新编译之前删除您的 bin 目录?

于 2008-09-12T22:41:28.673 回答
0

我遇到了同样的问题,并一直在想“我在 web.config 中做了什么改变”​​以可能做到这一点?

  <location path="." inheritInChildApplications="false">

那不允许断点为我工作。

于 2009-08-05T16:15:30.873 回答