NServiceBus指定处理程序执行的顺序

时间:2010-05-16 23:43:40

标签: c# handler nservicebus

只是想知道这是否是指定运行处理程序的顺序的方法 (AuthorizationHandler)在所有其他人之前?

public void SpecifyOrder(Order order)
{
    order.Specify(First<AuthorizationHandler>.Then<IHandleMessages<IMessage>>());
}

添加Then<IHandleMessages<IMessage>>()会感到奇怪。

在所有之前是否有更好的方式对总线执行x处理程序说 其他?

1 个答案:

答案 0 :(得分:4)

Specifying message handler order不应要求您列出可能发生的所有事情,只列出必须获得优先权的消息处理程序。我认为你的情况就足够了:

public void SpecifyOrder(Order order)
{
    order.Specify<AuthorizationHandler>();
}

如果没有为任何其他处理程序提供任何顺序,它们都应该按照配置程序加载它们的顺序执行。处理程序不会被忽略,因为没有为它们指定顺序。