2011-06-21 12 views
0

次のコードを使用してWCFにメッセージを記録しようとしていますが、Message Bodyは正しく書き込まれません。それは>... stream ...</s:Body>と書かれています。以前は完全なメッセージ本体を同じコードで記述していました。WCFログメッセージボディの問題

public class MMServiceMessageInspector : IDispatchMessageInspector 
{ 
    public object AfterReceiveRequest(ref Message request, IClientChannel channel, InstanceContext instanceContext) 
    { 
     MessageBuffer buffer = request.CreateBufferedCopy(Int32.MaxValue); 
     request = buffer.CreateMessage(); 
     Helper.LogMessage("Received: " + buffer.CreateMessage().ToString()); 
     return null; 
    } 
} 

答えて

0

メッセージがバッファリングされずにストリームされているため、メッセージがすべてメモリに格納されていないためです。診断機能に組み込まれたメッセージロギング機能を使用することを検討しましたか?あなたは、コードを使用することができ、メッセージの内容を強制的に

編集

here

+0

を議論したが、同じコードは、先週までメッセージ本文の罰金を書いていました。私はコードを変更していません – user228777

+0

ToStringがあなたにメッセージ本文を表示するという保証はありません - メッセージのサイズは潜在的に変更されていますか? –

+0

解決策の上に参照されているリンクが機能しませんでした – user228777