为什么要为事件接口层次结构中的每个级别创建订阅?

时间:2019-04-08 20:07:31

标签: masstransit

我试图了解如何通过使用masstransit和azure服务总线来正确发布和使用事件。我想使用接口作为我的消息契约,并且我的事件继承了接口的层次结构。

我的消费者将消费多种类型的事件;根据我的理解,“ ReceiveEndpoint”是最好的选择,因为“ SubscriptionEndpoint”指定一种消息类型。 我知道ASB不支持多态。

为单个事件接口设置接收端点时,将为层次结构中的每个级别创建一个预订:

service bus explorer

merge()

按预期收到消息。看起来订阅中的“转发到”属性与层次结构级别相关。附加订阅的目的是在Azure Service Bus上添加多态事件分派吗?

1 个答案:

答案 0 :(得分:1)

是的,多态订阅已添加到Azure Service Bus,这就是为什么您看到其他订阅的原因。因此,您可以订阅使用方中的接口并发布所需的任何类型,并且应该像RabbitMQ一样适当地路由已实现的接口。