2016-07-27 3 views
0

Dies kann eine dumme Frage sein, da ich völlig neu in Windows Phone Entwicklung bin - ich habe einige Erfahrung mit der Entwicklung in C# obwohl ... Wie auch immer, ich kann nicht herausfinden, was los ist und MSDN verwirrt mich, vielleicht habe ich alles falsch verstanden.So erstellen Sie eine System.Net.Sockets.Socket-Instanz für Windows Phone 8.1 App

Ich versuche einfach, UDP-Datagramme von einem Lumia 925 an meinen PC zu senden, also habe ich eine leere Windows Phone 8.1-App über den VS-Assistenten (MSVS 2015) erstellt. Nun, MSDN sagt, es soll eine socket class für Windows Phone 8.1 sein, aber es gibt nicht einmal einen Sockets-Namespace in System.Net. Jetzt habe ich mein Glück mit DatagramSocket s versucht, die, nach MSDN, sollte eine Methode GetEndpointPairsAsync verfügen, aber es nicht.

Ich dachte, dass ich vielleicht Assemblys fehlen würde, die ich den Referenzen hinzufügen müsste, aber im Dialogfeld Referenzen hinzufügen gibt es kaum etwas zu finden. Ich fange an zu denken, dass ich etwas sehr Grundlegendes verpasst habe.

Ich würde mich über Ideen freuen.

Antwort

1

Ja, Sie benötigen Windows.Networking.Sockets statt System.Net.Sockets. (Reference)

Was GetEndpointPairsAsync() können Sie dies versuchen:

async Task ListEndpoints() 
    { 
     HostName host = new HostName("www.stackoverflow.com"); 
     var eps = await DatagramSocket.GetEndpointPairsAsync(host, "80"); 
     foreach (EndpointPair ep in eps) 
     { 
      System.Diagnostics.Debug.WriteLine("EP {0} {1}", new object[] { ep.LocalHostName, ep.RemoteHostName }); 
     } 
    } 

Weitere Informationen here.

+0

Also ist das ein Fehler in MSDN? Immerhin heißt es deutlich "Namespace: System.Net.Sockets" sowie "Versionsinformationen: Windows Phone OS; Unterstützt in: 8.1, 8.0, 7.1; Plattformen: Windows Phone". – iko79

+0

@ iko79 Beachten Sie die Organisationsstruktur des Dokuments. [Windows Phone Silverlight Entwicklung] (https://msdn.microsoft.com/en-us/library/windows/apps/ff402535 (v = vs.105) .aspx) -> Windows Phone API Referenz ->. NET API für Windows Phone-> System.Net.Sockets-> Socket-Klasse. Also Socket-Klasse in Ihrer Frage ist für Windows Phone Silverlight. Sie haben jedoch ein Windows-Runtime-Projekt erstellt, indem Sie zunächst "Leere Anwendung" ausgewählt haben. Sie müssen möglicherweise "Leere App (Windows Phone Silverlight)" auswählen. –

Verwandte Themen