从ClientBase获取XML请求<t>

时间:2015-06-11 09:51:50

标签: c# .net wcf xmlservice

我目前正在使用ClientBase来访问网络服务。这工作正常,但我需要记录正在发送给服务的XML请求。我可以看到有使用侦听器和其他类似方法的方法,但我需要在我的代码库中提交它的方法中访问此XML请求。有什么方法支持这个吗?

2 个答案:

答案 0 :(得分:1)

&#34; XML&#34;只有在控制流离开您的方法并输入实际执行调用的WCF代码后才会创建(序列化)。因此,如果您理论上能够从代码中获取它,那么您必须在&#34;之后#34;实际的电话。这也是为什么这样做的预期方法是implement/register a IClientMessageInspector

唯一的另一件事,包括一些不必要的手工劳动,将是使用NetDataContractSerializer或DataContractSerializer手动序列化传递给WCF调用的参数。请注意,虽然这只会给你有效载荷,而不是完整的信息(包括标题等)。

我真的采用了建议的方式(参见上面的链接)。

答案 1 :(得分:0)

您可以尝试一些AOP编程。如果您使用Unity for DI,则可以使用Intercept类单独尝试Unity with Interception或Interception。