如何调试VB.NET WebMethod?

时间:2011-01-21 15:14:47

标签: asp.net vb.net debugging webmethod

我有一个使用Web服务的ASP.NET C#项目,而WebMethods是在VB.NET中用本地IIS服务器上的源代码编写的。 WebMethod返回null,我想调试它以了解为什么我得到它。

您可能知道,如果我在webmethod调用之前设置了一个断点,我就无法进入这个web方法。

那么,调试这个web方法的正确方法是怎样的呢?

谢谢!

2 个答案:

答案 0 :(得分:1)

将调试器附加到服务器进程,在Web方法代码中放置一个断点并调用Web方法。

Visual Studio应该在Web方法中中断。


对于这个确切的错误,VS 2005存在一个错误 - 请参阅here

知识库文章中的解决方案是将网络方法的所有String参数的签名从byref更改为byval

答案 1 :(得分:0)

Web方法在与使用应用程序不同的进程(Web服务)中运行。因此,当您调试使用的应用程序时,您无法进入Web服务。但是,您可以在运行使用应用程序时调试Web服务(例如,通过附加到适当的IIS进程)。另一种选择是直接调用Web服务 - 对于简单的方法,您可以使用Web服务本身提供的测试表单;对于更复杂的事情,像SoapUI这样的东西对于触发Web服务调用很有用。