1

届いたメッセージをログに記録するMessageInspectorがありますか?メッセージを1回しか読むことができず、コピーを作成する必要がある理由は何ですか?バッファリングされたコピーを作成する必要があるというMSDNのドキュメントを見ましたが、なぜこのように実装されているのかわかりません。誰かが私にそれを説明できますか?

private static void SendRequest(string request)
{
var req = (HttpWebRequest) WebRequest.Create("http://urltoservice.svc/MethodToCall");
req.ContentType = "text/xml";
req.Method = "POST";

using (var stm = req.GetRequestStream())
{
    using (var stmw = new StreamWriter(stm))
    {

        stmw.Write(request);
    }
}


byte[] myData;
using (var webResponse = req.GetResponse())
{

    var responseStream = webResponse.GetResponseStream();
    myData = ReadFully(responseStream);
}

// Do whatever you need with the response
string responseString = Encoding.ASCII.GetString(myData);
}

サーバー部分にアクセスできない場合、またはメッセージのバッファリングされたコピーを使用するようにMessageInspectorを変更する機能がない場合、上記のメッセージを変更してストリームのコピーを作成できますか?もしそうなら、私はそれをどのように行うのですか?

4

1 に答える 1

1

メッセージをバッファにコピーして、それで遊ぶことができます。メッセージの操作の詳細については、次のリンクを参照してください:http: //msdn.microsoft.com/en-us/library/ms734675.aspx

于 2012-06-26T19:24:34.490 に答える