VS2008调试器对Web应用程序表现异常

时间:2009-07-31 20:02:31

标签: asp.net visual-studio visual-studio-2008 wcf debugging

在我的工作计算机上,Visual Studio 2008(SP1)中的调试似乎与我以前的工作有些不同。我有两个可能或可能没有相关的问题。

第一个问题:

当我在调试模式下运行Web应用程序并且发生未处理的异常时,我立即得到黄色死亡屏幕。通常我的代码只是在抛出异常的行中断,允许我检查程序的状态。

出于某种原因,我在工作PC上唯一可以这样做的方法是在抛出异常的行上设置一个断点,并重复我所做的。这几天我一直很讨厌,但我不知道是什么原因造成这种情况。有什么想法吗?

第二个问题

我调试的站点中使用的WCF Web服务在调试方面也有点奇怪。大多数情况下,在服务中设置断点在执行该代码时不会产生任何影响。起初,我想我必须附加到wcfhost进程,但那不是它。当我在它调用服务的行上放置断点,并使用F11 步入方法调用时,我执行结束服务的代码,我可以调试我只想要。

为什么步入工作,而断点被忽略?有没有办法改变这种行为?

1 个答案:

答案 0 :(得分:2)

第一个问题:

  • 在Visual Studio中,转到“调试/例外”
  • 您应该在列表中看到三列:“名称”(例外类型),“投掷”,“用户处理”
  • 在“用户处理”列中,您必须激活“公共语言运行时例外”复选框。

注意,如果您不应该看到“用户处理”列,请转到工具/选项,然后单击树中的“调试”,并在列表中激活“启用我的代码(仅管理)”。然后在另一个对话框中显示“用户处理”列,您可以激活相应的复选框。

对于第二个问题: 在我看来,好像我遇到了类似的问题。我想你必须在那里设置断点,因为WCF服务在一个单独的“webserver”(你的本地VS webserver)上运行。因此,它不像在同一个应用程序中的普通方法调用,因此您必须在被调用的WCF方法上设置断点。我总是这样做,它对我来说很有效。