我们正在使用自己的主机,并希望指定一个首先触发的处理程序。我们有一个消息验证处理程序,我们想在我们的Saga处理程序之前触发。我们尝试使用下面的代码设置顺序,但查看我们的日志,我们的saga消息处理程序首先触发,然后验证处理程序触发。难过并且想知道这个传奇是否与它有关? 如果您有任何想法,请告诉我们。
此处的文档:http://docs.particular.net/nservicebus/handlers/handler-ordering
NServiceBus.Configure.With()
...
.UnicastBus()
.LoadMessageHandlers<First<YourHandler>>()
我们的代码如下:
var bus = Configure.With()
...
.UnicastBus()
.LoadMessageHandlers(new First<ValidationHandler>())
答案 0 :(得分:1)
将您的代码更改为NServiceBus常见问题解答中的示例。我有同样的问题,我也在做
.UnicastBus()
.LoadMessageHandlers(new First<ValidationHandler>())
当我切换到
.UnicastBus()
.LoadMessageHandlers<First<YourHandler>>()
按预期顺序运行处理程序