В настоящее время я пытаюсь разработать сетевую среду, ориентированную на сообщения, и немного застрял во внутреннем механизме.
Вот проблемные интерфейсы:
public interface IMessage
{
}
public class Connection
{
public void Subscribe<TMessage>(Action<TMessage> messageCallback);
public void Send<TMessage>(TMessage message);
}
Метод Send
не кажется сложным, хотя механизм, стоящий за Subscribe
, кажется немного более болезненным.
Очевидно, что при получении сообщения на одном конце соединения мне придется вызывать соответствующий делегат.
Есть ли у вас какие-либо советы о том, как читать сообщения и легко определять их типы?
Кстати, я бы не хотел использовать MSMQ.