2010-05-16 59 views
3

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

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

添加Then<IHandleMessages<IMessage>>()只是觉得奇怪。

在所有的 之前,有没有更好的方式对总线执行x处理程序进行说明?

回答

4

Specifying message handler order不应要求您列出可能发生的所有事情,而只是列出必须获得优先级的消息处理程序。我认为这将是足以在你的情况下使用:

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

在没有任何其他处理程序给出的排序,他们都应该执行以任何顺序配置器加载它们在处理程序不会仅仅因为没有订单被忽略。是给他们的。