WCF - 如何在服务响应中包含/添加WS-Addressing“TO”标头

时间:2013-04-22 09:45:55

标签: wcf response ws-addressing

我正在处理一个需要根据特定标准创建的WCF主机服务。我正在使用自定义绑定来实现标准的大部分要求。

响应和请求标头中需要WS-Addressing标头,虽然有些标题似乎是自动配置的,但我们错过了“MessageID”,“From”和“To”元素。

我们使用消息检查器和“BeforeSendRequest”方法在我们的测试客户端上添加了“From”“To”和“ReplyTo”标头。这按预期工作。

在主机服务上,我们尝试使用“BeforeSendReply”方法对“MessageID”,“From”和“To”元素使用相同的方法。但是,只有“MessageID”和“From”标题出现在消息中。 标题不会被添加。

任何人都可以提出任何建议 1.如何在响应消息中包含/添加“TO”ws-addressing标头?
2. WCF没有使用消息检查器方法为消息添加“To”标头的原因?

1 个答案:

答案 0 :(得分:0)

它基本上归结为将ManualAddressing属性设置为true,以便通知服务的基础通道,他不应再使用To:标头进行干预。

这可以通过web.config中的自定义绑定来完成:

<customBinding>
  <binding name="customBinding_manualAddressingEnabled">
    <textMessageEncoding />
    <httpTransport manualAddressing="true"/>
  </binding>
</customBinding>

有关详细信息,请参阅answer