如何在代码中启用WCF调试

本文关键字:启用 WCF 调试 代码 | 更新日期: 2023-09-27 18:07:56

我有一个自托管的WCF服务。我没有app.config文件,而是在代码运行时执行所有配置。但是我不知道如何在代码中启用调试。

我有一个VS解决方案与两个项目:

  1. 托管在WinForms应用程序中的WCF服务
  2. 使用服务的简单控制台客户端

我希望能够在Visual Studio中启动调试会话,调试客户端,在服务应用程序中设置和命中断点。当我使用app.config文件时我能够做到这一点,但现在我想在没有它们的情况下做同样的事情。

如何在代码中启用WCF调试

将调试器附加到wcf服务运行的进程上。

如果在IIS中,您将不得不附加到相应的w3p.exe进程。

如果在一个独立的应用程序或windows服务,附加到您的exe的名称。

在VS调试器选项中有子选项"attach to process"。您需要将断点设置为适当的代码,并调用导致该代码路径执行的服务。

可参考此链接:

http://msdn.microsoft.com/en-us/library/aa702726.aspx

和这个一样:

http://www.codeproject.com/Articles/17258/Debugging-WCF-Apps

如果需要从代码中启动调试器,请编写以下行:

System.Diagnostics.Debugger.Launch();

我经常在调试中使用这种技术。但是最好在发布版本中删除它。

如果你想附加到已经运行的进程,打开Visual studio,进入菜单Debug > Attach to process,找到主机进程,点击"附加"按钮。