我正在使用 WCF 通过网络发送一些 Linq 对象。我想使用消息日志记录或跟踪来记录消息大小。但是我不想,也没有能力使用配置文件来设置它。我正在努力弄清楚如何以编程方式执行此操作。我不在乎这是否发生在客户的主机上。我控制两者。
有没有人有这方面的经验?
最佳答案
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也可以提供一些帮助。
祝你好运
关于c# - 记录 WCF 消息大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/899741/