そのコードを生成するためにできることがいくつかあります。最初の最も簡単な方法 (私の意見では) は、その URL へのサービス参照を作成することです。ここにいくつかのスクリーンショットがあります:
プロジェクトを右クリックして、サービス参照を追加します。
asmx の URL を (クエリ文字列にメソッドを含めずに) 入力し、参照に名前を付けて [OK] をクリックします。
これにより、呼び出しを行うために必要なプロキシ コードが生成されます。
そこから、そのプロキシ コードを使用して Web サービスを呼び出すことができます。
TerraService.TerraServiceSoapClient client = new TerraService
.TerraServiceSoapClient("TerraServiceSoap");
string place = client.ConvertLonLatPtToNearestPlace(
new TerraService.LonLatPt { Lat = 47.6532, Lon = -122.135479 });
WSDL.exe
2 つ目の方法は、Visual Studio に付属のコマンド ライン ツールを使用することです。Visual Studio のコマンド プロンプトを起動し、 と入力しますwsdl /?
。これにより、アプリケーションのパラメーターが表示されます。私の場合、http://msrmaps.com/terraservice2.asmx? wsdl から WSDL のコピーを取得し、デスクトップに保存して、次のコマンドを実行しました。
wsdl /o:./terraservice.cs terraservice.wsdl
WSDL ファイルの横にプロキシ クラスを生成します。
最後に 1 つ... @Habibillah が提案したように、soapUI と親友になります。これは、コードを記述せずに Web サービスを呼び出すための優れたツールです。
それが役立つことを願っています!