3

WCFを使用して、いくつかのLinqオブジェクトをネットワーク経由で送信しています。メッセージロギングまたはトレースを使用してメッセージサイズをログに記録したい。ただし、これを設定するために構成ファイルを使用する必要はありません。私はこれをプログラムで行う方法を理解するのに苦労しています。これがクライアントのホストで発生するかどうかは関係ありません。私は両方を制御します。

誰かがこれをした経験がありますか?

4

3 に答える 3

3

マークの権利、メッセージインスペクターはあなたがこれを行うことを可能にします。次のようなクラスを作成します。IDispatchMessageInspectorを実装します。以下のメソッドは、リクエストメッセージを操作するためのコードを実装できる場所で利用可能になります。

Public Function AfterReceiveRequest(ByRef request As System.ServiceModel.Channels.Message, ByVal channel As System.ServiceModel.IClientChannel, ByVal instanceContext As System.ServiceModel.InstanceContext) As Object Implements System.ServiceModel.Dispatcher.IDispatchMessageInspector.AfterReceiveRequest
    'Output the request message to immediate window
    System.Diagnostics.Debug.WriteLine("*** SERVER - RECEIVED REQUEST ***")
    System.Diagnostics.Debug.WriteLine(request.ToString())

    Return Nothing
End Function

また、次のリンクも役立つ場合があります。

幸運を

于 2009-05-26T15:30:20.843 に答える
0

また、wsHttpまたはbasicHttpバインディングのいずれかを使用している場合は、HTTPメッセージをログに記録できるFiddlerを使用することもできます。http://www.fiddler2.com/fiddler2/

于 2009-05-25T03:24:49.243 に答える
0

プログラミングではありませんが、おそらく:wireshark

または、メッセージインスペクターを調べます。ただし、サイズロギングの具体的な例はありません。

于 2009-05-22T20:13:42.153 に答える