我正在使用NCQRS框架和NServiceBus 3.3.4做一些工作。我一直在努力让一些订阅触发,据我所知,我所有的配置都是 100% 正确的。
经过一番挖掘,我注意到保存在Raven DB订阅文档中的MessageType名称看起来有点奇怪。NCQRS 框架将域事件包装在名为 EventMessage'1 的泛型类型中。现在,当该消息保存在 scubscription 存储中时,它似乎会切断部分名称,如下所示:
Ncqrs.Nsb.EventMessage`1[[Platform.Events.Category.CategoryRemoved, Version=1.0.0.0
我希望这个名字更像这样:
Ncqrs.Nsb.EventMessage`1[[Platform.Events.Category.CategoryRemoved, Version=1.0.0.0]]
至少。
这可能是一个错误还是我做错了什么?我在 app.config 中的订阅如下所示:
<add Messages="Ncqrs.NServiceBus.EventMessage`1[[Platform.Events.Category.CategoryRemoved, Platform.Events]], Ncqrs.NServiceBus" Endpoint="core.platform.domain" />
这让我发疯了!
这不是一个错误,NServiceBus 不支持这个,因为我们想推动你使用更明确的消息协定。也许有一种方法可以配置 NCQRS 来不需要"事件消息"的东西?