меня есть интерфейсРеализация «Composite шаблон» с замок Виндзор
public interface IMessageHandler
{
void ProcessMessage(CanonicalModelEntityMessage message);
}
У меня есть какие-то конкретные обработчики с такого рода шаблон
public class ThingMessageHandler : IMessageHandler
{
public void ProcessMessage(Message queueMessage){
//HandleMessage
}
}
У меня также есть «композитный» объект, который будет
public class MessageHandler : IMessageHandler
{
private List<IMessageHandler> _handlers;
public MessageHandler()
{
_handlers =new List<IMessageHandler>();
}
public void Handle(CanonicalModelEntityMessage message)
{
foreach (var messageHandler in _handlers)
{
messageHandler.Handle(message);
}
}
public void Add(IMessageHandler messageHandler)
{
_handlers.Add(messageHandler);
}
}
Каждый обработчик получает каждое сообщение.
Я считаю, что есть способ подключения этого к замку, поэтому, когда добавляется больше обработчиков, он «просто работает». Можете ли вы мне помочь в разработке каких изменений в моем коде, которые мне понадобятся, и на что будут выглядеть установщики?
Hi Loofer Я постараюсь дать вам лучший ответ позже. Но, похоже, вы пытаетесь сделать то же самое, что и я, с агрегатором событий Caliburn Micro. Если вы посмотрите здесь код https://github.com/marwijn/Caliburn.Micro.Windsor/blob/master/content/Bootstrap/EventRegistrationFacility.cs.pp, вы можете найти свой ответ. – Marwijn