0

Web サービスを使用する ASP.NET C# プロジェクトがあり、WebMethods はローカル IIS サーバー上のソース コードを使用して VB.NET で記述されています。WebMethod は null を返します。これをデバッグして、これが発生する理由を知りたいと思います。

ご存知かもしれませんが、webmethod 呼び出しの直前にブレークポイントを設定すると、この webmethod にステップ インできなくなります。

では、この webmethod をデバッグする正しい方法は?

ありがとうございました!

4

2 に答える 2

1

デバッガーをサーバー プロセスにアタッチし、Web メソッド コードにブレークポイントを配置して、Web メソッドを呼び出します。

Visual Studio は Web メソッド内で中断する必要があります。


この正確なバグについては、VS 2005 に対するバグがあります。ここを参照してください。

KB 記事の解決策はString、Web メソッドのパラメーターの署名を から に変更するbyrefことbyvalです。

于 2011-01-21T15:18:33.777 に答える
0

Web メソッドは、消費するアプリケーションとは異なるプロセス (Web サービス) で実行されます。したがって、消費するアプリケーションをデバッグするときに、Web サービスにステップ インすることはできません。ただし、消費アプリケーションの実行中に Web サービスをデバッグすることはできます (たとえば、適切な IIS プロセスにアタッチすることにより)。もう 1 つのオプションは、Web サービスを直接呼び出すことです。単純なメソッドの場合は、Web サービス自体が提供するテスト フォームを使用できます。より複雑なことについては、SoapUI のようなものが Web サービスの呼び出しをトリガーするのに役立ちます。

于 2011-01-21T15:21:56.183 に答える