我正在使用 Web 应用程序作为客户端来使用代理调用 WCF 方法。
对于客户端对象发出的每个请求,我需要填充几个属性(在请求类中声明)是否可以在进行实际的 Web 服务调用之前挂钩一个方法。
我现在无法修改服务代码,在这种情况下可以利用 WCF 扩展点吗?
谢谢你的帮助。
我正在使用 Web 应用程序作为客户端来使用代理调用 WCF 方法。
对于客户端对象发出的每个请求,我需要填充几个属性(在请求类中声明)是否可以在进行实际的 Web 服务调用之前挂钩一个方法。
我现在无法修改服务代码,在这种情况下可以利用 WCF 扩展点吗?
谢谢你的帮助。
如果要更改方法参数的属性,可以使用 anIParameterInspector
来执行此操作,因为此时您将获得一个包含要发送到服务器的所有参数的数组。
如果您需要更改请求的其他部分(例如传输或 SOAP 标头),这IClientMessageInspector
可能是最好的方法。
有关客户端许多扩展点的更多信息,您可以查看http://blogs.msdn.com/b/carlosfigueira/archive/2011/03/14/wcf-extensibility.aspx上的博客系列。