我正在使用WCF通过线路发送一些Linq对象。我想要使用消息日志记录或跟踪来记录消息大小。我不想要,或者有能力使用配置文件来设置它。我正在努力弄清楚如何以编程方式进行此操作。我不在乎这是否发生在客户端。我控制着两者。记录WCF消息大小
有没有人有这样做的经验?
我正在使用WCF通过线路发送一些Linq对象。我想要使用消息日志记录或跟踪来记录消息大小。我不想要,或者有能力使用配置文件来设置它。我正在努力弄清楚如何以编程方式进行此操作。我不在乎这是否发生在客户端。我控制着两者。记录WCF消息大小
有没有人有这样做的经验?
Marc的权利,Message Inspectors将允许您执行此操作。创建一个类:实现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
此外,以下Link也可能会提供一些帮助。
好运
不编程,但可能:wireshark?
或者,查看message inspectors。尽管如此,我没有具体的尺寸日志记录示例。
您也可以使用Fiddler,它可以在您使用wsHttp或basicHttp绑定之一时记录您的HTTP消息。 http://www.fiddler2.com/fiddler2/