如何在Windows Phone Silverlight项目中创建http Web请求?

时间:2014-12-27 10:02:44

标签: c# windows silverlight windows-phone-8 windows-phone-8.1

我想创建一个Http Post并从Windows Phone App获得响应......这就是我在ASP.net中的表现。

string strUrl =  "http://....."; 
WebRequest request = HttpWebRequest.Create(strUrl);
HttpWebResponse response = (HttpWebResponse)request.GetResponse(); 
Stream s = (Stream)response.GetResponseStream();
StreamReader readStream = new StreamReader( s );
string dataString = readStream.ReadToEnd();
response.Close();
s.Close();
readStream.Close();

但我不能这样做,因为它给出了一个错误,即GetResponse方法不能在Silverlight项目中使用。有什么替代方案,我该怎么做?

1 个答案:

答案 0 :(得分:0)

大多数导致阻止行为的方法已从WP / Silverlight API中消除(这里的想法不是给开发人员任何无意中锁定UI的机会)。

同步IO属于此类别。

您需要使用async方法重写您的方法:

public async Task<SomeReturnType> MyMethod()
{
    //...
    HttpWebResponse response = 
        (HttpWebResponse)(await request.GetResponseAsync()); 
    //...

}