2010-05-13 5 views
3

J'essaie actuellement de développer un framework de réseau orienté messages et je suis un peu bloqué sur le mécanisme interne.Passer un message sur le réseau

Voici les interfaces problématiques:

public interface IMessage 
{ 
} 


public class Connection 
{ 
    public void Subscribe<TMessage>(Action<TMessage> messageCallback); 
    public void Send<TMessage>(TMessage message); 
} 

La méthode Send ne semble pas compliqué, bien que le mécanisme derrière Subscribe semble un peu plus douloureux. Évidemment, lors de la réception d'un message sur une extrémité de la connexion, je vais devoir appeler le délégué approprié. Avez-vous des conseils sur la façon de lire les messages et de détecter facilement leurs types? Par ailleurs, je voudrais éviter d'utiliser MSMQ.

Répondre

1

Cela ressemble à un problème Windows Communication Foundation a été créé pour résoudre: http://msdn.microsoft.com/en-us/netframework/aa663324.aspx mais vous avez tagué la question .NET 2.0, ce qui peut ne pas être une option pour vous. Au lieu de cela, si vous contrôlez les côtés client et serveur, consultez .NET Remoting: http://msdn.microsoft.com/en-us/library/kwdt6w2k(VS.71).aspx.

+0

+1 bon conseil, et [vous pouvez utiliser WCF avec .NET 2.0] (http://en.wikipedia.org/wiki/.NET_Framework#.NET_Framework_3.0). Bien sûr, selon ce que vous faites avec WCF et comment vous le configurez, il peut utiliser MSMQ (bien que je ne comprends pas pourquoi quelqu'un exclurait MSMQ pour un tel système). –

+0

On dirait que les canaux de WCF pourraient être une option. Je vais essayer de voir ce que je peux faire avec eux et 2.0 –

Questions connexes