2017-10-17 3 views
1

私はSOAP WebサービスのWSDLを持っていて、MVCアプリケーションを介して消費しています。SOAPリクエストメッセージのXML表現を取得する方法は?

WSDLをWebサービスとしてVisual Studioソリューションに追加すると、自動的にプロキシクラスが作成され、すべてのシリアル化/不安定化が処理されます。これはしばらくの間素晴らしいものです。私はこのプロキシクラスを使ってSOAPリクエストをWebサービス(純粋なC#コードとXMLは関係ありません)に呼び出して送信しています。私の返信メッセージが返ってきて、すべてがうまくいっています。

しかし、私がWebサービスに送信しているSOAPメッセージの正確なXML表現は何かを見つける必要があります。これをどうやって見つける/見つけることができますか?

+0

あるこの

var serxml = new System.Xml.Serialization.XmlSerializer(request.GetType()); var ms = new MemoryStream(); serxml.Serialize(ms, request); string xml = Encoding.UTF8.GetString(ms.ToArray()); 

のようにそれを行うことができます応答を取得します。要求/応答。このリンクを確認してください:https://stackoverflow.com/questions/461744/get-soap-message-before-sending-it-to-the-webservice-in-netあなたがチェックするだけで、ログや書き込みをしない場合は、Fiddlerを使用することをお勧めします。 – praty

答えて

1

は、XMLは、あなたが常にトレースし、SOAPを書くことができ、あなたの生のSOAP

2

これはSOAPUIを使用すると簡単です。

  1. SoapUIをダウンロードしてください。
  2. WSDLを指す新しいSOAPプロジェクトを作成します。 enter image description here

  3. WSDLをインポートしたら、要求を開き、 の値を入力します。つまり、実際のSOAPリクエストを作成します。

    enter image description here

  4. 緑の再生ボタンを押して、サーバー上の要求を実行します。

    enter image description here

  5. enter image description here
+0

一言で言えば答え!投票する! –

+0

お返事ありがとうございます。これは確かに助けになる。しかし、私は要求のログを探しています。私はSOAPExtensionを見ていますが、拡張クラスを作成してweb.configファイルを変更した後何らかの理由で私はSOAPサービスを呼び出すときに作成されたログを見ることができません。あなたは何か提案があれば確かめてください? – CB4

+0

@ Cb4私はAOPとLog4Netの混合物を使用しましたが、それは魅力的です。 – Namphibian

関連する問題