2011-06-17 2 views
2

J'essaie d'utiliser des sockets avec une application Silverlight, mais cela ne semble pas fonctionner. Voici mon code à ce jour:Sockets avec l'application Silverlight?

using System.Net.Sockets; 
... 
... 
Socket server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); 
server.Bind(new IPEndPoint(IPAddress.Loopback, 0)); 
server.Listen(1); 

Mais je reçois un message d'erreur indiquant que Bind et Listen ne sont pas définis. Est-ce que quelqu'un sait pourquoi cela pourrait être? J'utilise Silverlight 4, avec .NET 4.0 (visual studio 2010).

Répondre

4

Le code que vous avez fourni est .Net et non Silverlight. Il y a une grande différence entre les deux, car .Net prend en charge les transferts de données synchrones et asynchrones, tandis que Silverlight ne prend en charge que le mode asynchrone. Découvrez la différence sur msdn:

Les liens ont également des exemples sur la façon de les utiliser.

+0

Oui, il s'agit du code .NET. Pourriez-vous me donner l'équivalent Silverlight s'il vous plaît. – Rodger

+3

@Rodger ici SO nous ne donnons pas de code comme ça, nous donnons des conseils, des suggestions et des idées, mais pas complet des solutions hors de la boîte. Vous pouvez vous documenter sur les différences en lisant les liens ci-dessus, vous essayez quelque chose et si vous avez des problèmes, vous postez votre code et demandez de l'aide. Personne ne trouvera le temps ou ne fera l'effort d'écrire le code entier pour vous. à moins que vous ne lui consacriez alors votre salaire: D –

0

J'utiliser un point de terminaison WCF sur le serveur qui fait cette communication (et encore, via WCF au lieu de prises si possible), l'interface utilisateur SL serait simplement communiquer avec le point final ECF async ....

+0

Je ne comprends pas, pourriez-vous donner un exemple s'il vous plaît. – Rodger

0

Silverlight n'autorise pas la création de sockets serveur. Vous pouvez uniquement ouvrir les sockets client et vous connecter à un serveur.