【发布时间】:2011-07-31 04:14:56
【问题描述】:
我正在努力实现的目标是拥有一个 WCF 路由服务,该服务可以接收来自客户端的消息,将它们保存到某种类型的数据存储中,然后处理/发送到它们的目标 WCF 服务。
需要考虑的事项:
- 您可以使用ClientViaBehavior(概述here 和here)创建路由服务
- ClientViaBehavior 无法与 basicHttpBinding 一起使用,所以我需要使用 wsHttpBinding(basicHttpBinding 没有在消息上设置“To”标头,很难找到)
- WCF 消息对象本身被发送到路由服务,在那里它可以作为序列化字符串持久化
- 我不希望路由服务知道消息中的内容 - 因此,该服务不会引用所涉及的数据合同
- 当需要将消息路由到其目的地时,我需要能够在路由服务和目标服务之间创建一个通道
- 路由服务不希望知道每个目标服务 - 理想情况下,WCF 可以根据正在处理的消息的内容/标头动态创建适当的通道。
对 WCF 要求太多了吗? (我感觉可能是……)
任何关于如何完成这样的事情的建议将不胜感激。
【问题讨论】: