如何在 Windows Phone Silverlight Project 中创建 http Web 请求



我想发布一个 Http 帖子并从 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 项目中使用。什么是替代方案,我该怎么做?

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

同步 IO 属于此类别。

您需要使用以下方法重写async方法:

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

最新更新