1

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

一个简短的代码片段解释 -

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

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

A. 从​​标头中获取值并将它们作为对象发送到 BeforeSend。

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

我在这里滥用 IDispatch 吗?这是正确的方法吗?请忽略我现在对服务总线的想法是否正确。

如果这不是解决方法,当代理消息发送到原始服务时,您将如何收集消息标头并正确插入它们?

4

1 回答 1

0

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

于 2016-01-05T10:57:54.860 回答