bonjour,

j'ai un site web, qui exécute un composant silverlight 2 beta2, dans un browser.
ce composant silverlight communique avec le serveur web, par socket.

pour initialiser ma demande depuis le client, j'utilise ce code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
DnsEndPoint endPoint = new DnsEndPoint(Application.Current.Host.Source.DnsSafeHost, 4530);
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
 
SocketAsyncEventArgs args = new SocketAsyncEventArgs();
args.UserToken = socket;
args.RemoteEndPoint = endPoint;
args.Completed += new EventHandler<SocketAsyncEventArgs>(OnSocketConnectCompleted);
socket.ConnectAsync(args);
une fois mon client sous silverlight connecté au serveur de socket, un délégué est appelé dans silverlight.
voici le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
private void OnSocketConnectCompleted(object sender, SocketAsyncEventArgs e)
{
   byte[] response = new byte[1024];
   response[0] = 255;
   response[1] = 254;
 
  e.SetBuffer(response, 0, response.Length);
  e.Completed -= new EventHandler<SocketAsyncEventArgs>(OnSocketConnectCompleted);
  e.Completed += new EventHandler<SocketAsyncEventArgs>(OnSocketReceive);
  Socket socket = (Socket)e.UserToken;
  socket.ReceiveAsync(e);
}
dès que le serveur reçois cette demande, un délégué est appelé, toujours dans silverlight, et je suis censé recevoir les datas depuis mon serveur de soquet.

tout marche parfaitement jusqu'ici.

mais je ne sais pas comment passer un paramètre au serveur de soquet, pour lui donner des infos sur les données que je souhaite recevoir dans silverlight.

par exemple, un nom, un numero, un objet.



quelqu'un aurait une idée ?

merci
Olivier