httpclient.getstringasync问题

时间:2013-06-02 12:28:53

标签: asynchronous windows-runtime microsoft-metro windows-store-apps dotnet-httpclient

我想为GuildWars 2开发Dragon Timer Windows应用商店应用。 无论如何,我在sql数据库中保存了一个时间戳。为了在应用程序中获取此时间戳,我创建了一个php脚本,将数据库的内容写入页面。现在我试图通过HttpClient.GetStringAsync()方法接收该字符串。这是剪辑的代码:

async Task<Dictionary<String, DateTime>> GetKillTimes()
    {
        Dictionary<String, DateTime> killTimes = new Dictionary<String,DateTime>();

        HttpClient httpClient = new HttpClient();
        Task<string> getStringTask = httpClient.GetStringAsync("http://www.wp10454523.server-he.de/truhentimer/getTimes.php");

        String rawKillTimes = await getStringTask;

        //Parse to Dictionary...

        return killTimes;
    }

我尝试了一些不同的方法,我从谷歌(WebRequest ...),但每个人都陷入了Get-Part。我可能误解了这个功能吗?我不应该得到页面的内容,这是一个简单的字符串吗?

1 个答案:

答案 0 :(得分:0)

您必须使用await关键字作为网络请求&amp; WinRT中的响应是异步的,因此您必须使用await关键字。 await之前的httpClient.GetStringAsync(...)

Task<string> getStringTask = await httpClient.GetStringAsync("http://www.wp10454523.server-he.de/truhentimer/getTimes.php");