gpt4 book ai didi

nservicebus - 使用 IHandleMessages 的一些困惑

转载 作者:行者123 更新时间:2023-12-04 06:29:51 24 4
gpt4 key购买 nike

我有一个订阅多个不同发布者的订阅者。所有这些发布者都发布一条消息,其接口(interface)派生自基本接口(interface)。此基本消息包含所有消息所需的一些公共(public)属性,并且是一个标记。

public interface IBaseMessage : IMessage
{}

public inteface IPublisher1Message : IBaseMessage
{}

public inteface IPublisher2Message : IBaseMessage
{}

在订阅者中,我创建了一个订阅系统中所有发布者的类。
public BaseMessageHandler : IHandleMessages<IBaseMessage>
{
public void Handle(IBaseMessage message) {}
}

我希望它处理来自所有发布者的消息,但我看到它最多为一个发布者触发,具体取决于我如何进行消息端点映射。
<MessageEndpointMappings>
<add Messages="Messages.IPublisher1Messages,Messages" Endpoint="Publisher1" />
<add Messages="Messages.IPublisher2Messages,Messages" Endpoint="Publisher2" />
</MessageEndpointMappings>

有没有办法在一个处理程序中处理来自不同发布者的消息?

最佳答案

您是否依赖自动订阅这个?

因为我想我记得曾经遇到过与您类似的麻烦——我记得,解决方案是手动订阅每条消息。

您仍然可以依赖多态消息分发,它只是多态自动订阅似乎不起作用。

关于nservicebus - 使用 IHandleMessages 的一些困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5555424/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com