如何正确地重新发送服务总线中的邮件头

时间:2015-12-09 20:38:11

标签: wcf servicebus idispatchmessageinspector

我一直在建立一个"愚蠢的"从头开始的服务总线获取发送到各种不同服务的消息(标头中包含凭证令牌),并且需要使用它拥有的代理客户端将所述消息中继到服务。

简短的代码段解释 -

    ServiceBus: IServiceBus {
    SomeService clientProxy = new SomeService();
    clientProxy.OperationThatRequiresTokensHere(); //this is the way the message is relayed.
}

我一直在尝试实施IDispatchMessageInspector并使用AfterRequest和BeforeReply来:

一个。从标题中获取值并将它们作为对象发送到BeforeSend。

B中。在BeforeSend中将它们插入到代理客户端消息中以正确的服务。

我在这里滥用IDispatch吗?这是正确的方法吗?现在请不要理解我对服务总线的看法是否正确。

如果这不是解决问题的方法,当代理邮件转到原始服务时,您将如何收集邮件标题并正确插入?

1 个答案:

答案 0 :(得分:0)

您正试图影响来自WCF服务模型管道中可扩展性点的消息流,该管道旨在检查/编辑消息。那不行。