NServiceBus 5 — получить сопоставление обработчиков

У меня есть проект NServiceBus, и он отображает объекты в моих сборках, которые реализуют IHandleMessage<Type>.

Мне интересно, есть ли способ получить список всех сопоставлений классов с их обработчиками?


person developer82    schedule 03.08.2015    source источник
comment
Мне любопытно, для чего бы вы использовали этот единый список?   -  person Udi Dahan    schedule 04.08.2015
comment
Оформить заказ ServiceInsight (хотя это больше касается сопоставлений во время выполнения)   -  person Sean Farmar    schedule 04.08.2015
comment
@UdiDahan Я разработал библиотеку, которая при копировании в проект NServiceBus запускается сама по себе и с помощью шаблона Unit Of Work отслеживает и ведет статистику того, что делает система - какие сообщения передаются, сколько раз и как долго - я начал это чтобы я мог отслеживать, что вызывается в моей системе, чтобы знать, что мне нужно для отладки в коде. Теперь то, что я пытаюсь сделать, это добавить что-то в этот инструмент, который поможет мне узнать, есть ли входящие сообщения, для которых нет обработчиков в коде.   -  person developer82    schedule 06.08.2015
comment
Это считается ошибкой - см.: docs.particular.net/nservicebus/handlers/   -  person Udi Dahan    schedule 06.08.2015


Ответы (1)


Я думаю, вы ищете MessageHandlerRegistry https://github.com/Particular/NServiceBus/blob/463f464c25bd71c7d6dbb522484e452ea47214c1/src/NServiceBus.Core/Unicast/IMessageHandlerRegistry.cs

Я использую его в своем проекте для отправки событий, полученных из EventStore, следующим образом: https://github.com/volak/Aggregates.NET/blob/master/src/Aggregates.NET.Consumer/NServicebusDispatcher.cs

Похоже, что этот класс исчезнет в версии 6.0, так что, возможно, об этом стоит знать.

person Charles    schedule 03.08.2015