我正在尝试实现一个简单的消息检查器,该消息检查器将示例on MSDN中的消息写入调试窗口:
public class MyMessageInspector : IDispatchMessageInspector
{
public object AfterReceiveRequest(ref Message request, IClientChannel channel, InstanceContext instanceContext)
{
System.Diagnostics.Debug.WriteLine(request.ToString());
return null;
}
public void BeforeSendReply(ref Message reply, object correlationState)
{
System.Diagnostics.Debug.WriteLine(reply.ToString());
}
}
答复正在按预期方式写。但是,该请求似乎为空。关于可能出问题的任何想法?我正在使用带有控制台应用程序的Service Reference代理作为客户端。
我正在使用basicHttpbinding并通过svc文件与IIS托管。我的Web方法的参数是复杂类型。我不确定这是否有所作为。
最佳答案
首先尝试消息请求的CreateBufferedCopy(即克隆):http://msdn.microsoft.com/en-us/library/ms734675.aspx(将消息复制到缓冲区中)。
在“现在是消息检查部分”下的更多信息:http://binarymist.net/2010/06/14/message-inspection-in-wcf/
关于wcf - WCF检查邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4588084/