C#でWebサービスのURLからSoapEnvelope情報​​を取得するにはどうすればよいですか?

c# soap wcf web-services
C#でWebサービスのURLからSoapEnvelope情報​​を取得するにはどうすればよいですか?

基本的に、メソッド名、取得するパラメーター、およびあらゆる種類のWebサービスから返されるパラメーターを取得する汎用クライアントを作成しようとしています。 そのためにWSDL xmlを解析することを考えましたが、必要な情報はさまざまな要素に散在しています。 次に、必要な正確な情報を含むSOAPエンベロープを見ました。 そのため、特定のタグから必要なデータを抽出できるように、Webサービスページをダウンロードし、一連の文字列操作を実行することを考えました。 しかし、RequestおよびResponseヘッダー情報を含むこのデータを提供できるC#関数があると思います。

誰でも私を案内してください。 前もって感謝します。

  0  0


ベストアンサー

有効なアプローチはWSDLのみです。これは、サービスの唯一の実際の記述であるためです。 これらの「ヘルプページ」は、ASMXの単なる機能です。 たとえば、WCFには、SOAPメッセージの例を示すこのヘルプページがありません。 また、SOAPメッセージの例は、実際にはメッセージの内容全体を網羅していません。どの要素が必須で、どの要素が必須ではないかを正しく示していません。 XSDの選択などの高度な機能が正しく表示されません。 汎用クライアントを作成する場合は、WSDLを解析する必要があります。 それは本当に大きな仕事です。 また、WSDLは他のWSDLおよびXSDを参照できることに注意してください。

物事をもっと簡単にするには、利用可能なクラスをチェックする必要があります
.NET framework to deal with service descriptions. For example
`System.ServiceModel.Description.MetadataExchangeClient`およびその名前空間からの他のクラス。

1


タイトルとURLをコピーしました