2014-04-19 6 views
-1

Je souhaite publier des données avec HttpWebRequest à l'aide du code MSDN, mais getresponse() ne fonctionne pas.getrequeststream dans Windows Phone 8

System.net.httpwebrequest does not contain a definition for getrequeststream 

http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.getresponse.aspx

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.IO; 
using System.Net; 
using System.Windows; 
using System.Windows.Controls; 

HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create("http://d.co/login.php"); 
myReq.Method = "POST"; 
myReq.ContentType = "application/json"; 
Stream dataStream = (HttpWebResponse)myReq.GetRequestStream(); 
+0

Pouvez-vous élaborer sur «ne fonctionne pas»? Postez votre message d'erreur afin que nous puissions avoir une meilleure idée. Et les cas dans vos 'usings' sont incorrects –

+0

System.net.httpwebrequest ne contient pas de définition pour getrequeststream, using are OK – user3529738

+0

Quelle plate-forme ciblez-vous? Êtes-vous sur Windows Phone? –

Répondre

2

Cette méthode n'existe pas sur Windows Phone, parce que vous êtes nombreux à utiliser async IO constamment. Vous avez besoin de GetRequestStreamAsync ou BeginGetRequestStream. La méthode *Async est généralement plus facile à comprendre et à utiliser que Begin*, mais nécessite un compilateur à jour. L'exemple pertinent est ici, dans le téléphone une base de documentation: http://msdn.microsoft.com/en-us/library/windowsphone/develop/System.Net.HttpWebRequest(v=vs.105).aspx

+2

@ user3529738 Je n'ai vraiment aucune idée de la façon de répondre à cette affirmation. –

+0

Avez-vous un raccourci? – user3529738

+0

@user sure: voici comment vous le raccourcissez: vous utilisez l'exemple pour comprendre ce qui se passe, puis lorsque vous l'écrivez localement, vous n'utilisez que les bits dont vous avez besoin. Aussi, comme indiqué: using async/await sur les * méthodes asynchrones supprimera le besoin de plusieurs méthodes, le rendant plus lisible –