Gibt es eine Möglichkeit, ein IAsyncResult in Windows Phone 8 abzuwarten?

7

Wie kann ich await mit HttpWebRequest in Windows Phone 8 verwenden?

Gibt es eine Möglichkeit, das IAsyncResult-Zeug mit abwarten zu arbeiten?

%Vor%

Danke!

    
swinefeaster 05.12.2012, 22:36
quelle

2 Antworten

16

Verwenden Sie TaskFactory.FromAsync , um ein Task<Stream> von BeginGetRequestStream /% zu erstellen. co_de% Methoden. Dann kannst du deine EndGetRequestStream komplett loswerden und das gleiche für die Antwort tun.

Beachten Sie, dass Sie derzeit OnGotWebRequest aufrufen, wenn ein EndGetResponse -Aufruf abgeschlossen ist, was zu Beginn nicht angebracht ist - Sie müssen die BeginGetRequestStream -Methode aufrufen, um die von Ihnen ursprünglich aufgerufene EndFoo zu erreichen. Hast du vor, BeginFoo anzurufen?

    
Jon Skeet 05.12.2012, 22:38
quelle
4

Wenn Sie das Paket Microsoft.Bcl.Async installieren, erhalten Sie einige async -ready-Erweiterung Methoden, einschließlich denen für HttpWebRequest .

    
Stephen Cleary 06.12.2012 01:50
quelle