通常,您应该为您的系统建模,以便一个特定的端点“拥有”任何给定的事件类型,从而成为发布它的端点。
但是,从技术上讲,没有什么可以阻止您从多个端点发布相同的事件类型,但我建议它们在这种情况下共享订阅存储 - 例如在某个 SQL Server(也适用于 Express 版本)中。
这样,客户端只需要将事件类型映射到任何能够发布它的端点之外的任意端点,这样当它们 时bus.Subscribe<SomeEvent>()
,所有发布者都会在它们 时获得该订阅者bus.Publish(new SomeEvent { ... })
。