更新:2007 年 11 月
本主题适用于:
| 版本 | Visual Basic | C# | C++ | Web Developer | 
|---|---|---|---|---|
| 速成版 | .gif) | .gif) | .gif) | .gif) | 
| 标准版 | .gif) | .gif) | .gif) | .gif) | 
| 专业团队版 | .gif) | .gif) | .gif) | .gif) | 
表格图例:
| .gif) | 适用 | 
| .gif) | 不适用 | 
| .gif) | 默认情况下隐藏的一条或多条命令。 | 
当托管客户端调用托管的 XML Web services 时,Visual Studio 调试器会自动跟踪客户端对 Web 服务的调用。如果客户端和 Web 服务都是用托管代码编写的,则可以单步执行 Web 服务,就如同单步执行普通的函数调用一样。单步执行可以跨线程、进程和计算机进行。
单步执行 Web 服务调用时,调试器会自动附加到 ASP.NET 辅助进程 aspnet_wp.exe 或 w3wp.exe。有关更多信息,请参见 ASP.NET 调试:系统要求。ASP.NET 辅助进程可以位于本地计算机上,也可以位于远程计算机上。
| .gif) 说明: | 
|---|
| 若要附加到 ASP.NET 辅助进程,您必须是运行该进程的计算机上的管理员。 | 
如果要同时调试托管代码和本机代码,必须在项目中启用这两种调试。您可以通过在“<项目> 属性页”对话框中选择“启用本机调试”选项来启用本机调试。
当在 Web 服务中的执行中断时,您可以查看同时包含来自客户端和 Web 服务的调用的合并调用堆栈。如果线程之间发生了调用,则必须启用相应的显示选项才能查看该信息。
显示线程间调用
- 右击“调用堆栈”窗口。 
- 单击“包括对其他线程和来自其他线程的调用”。 - 单步执行 Web 服务时,可以使用所有普通的执行命令,例如“单步”和“继续”。在 Web 服务调用结束时,将跳出调用 Web 服务的客户端代码。 - 跳出 Web 服务时,调试器仍将附加到 ASP.NET 辅助进程。只有在调试会话结束或通过选择“调试”菜单上的“全部分离”手动分离进程时,调试器才会与 ASP.NET 辅助进程分离。