c# - 将任务<字符串> 转换为字符串

标签 c# async-await win-universal-app

<分区>

我想在通用 Windows Phone 应用程序中从 JSON 文件进行解析,但我无法将任务转换为字符串

public MainPage()
    {
        this.InitializeComponent();

        HttpClient httpClient = new HttpClient();
        String responseLine;
        JObject o;
        try
        {
            string responseBodyAsText;

            HttpResponseMessage response = httpClient.GetAsync("http://localhost/list.php").Result;

            //response = await client.PostAsync(url, new FormUrlEncodedContent(values));
            response.EnsureSuccessStatusCode();
            responseBodyAsText = response.Content.ReadAsStringAsync().Result;
           // responseLine = responseBodyAsText;
              string Website = "http://localhost/list.php";
            Task<string> datatask =  httpClient.GetStringAsync(new Uri(string.Format(Website, DateTime.UtcNow.Ticks)));
            string data = await datatask;
            o = JObject.Parse(data);
            Debug.WriteLine("firstname:" + o["id"][0]);
        }
        catch (HttpRequestException hre)
        {
        }

这一行有错误

 string data = await datatask;

我该如何解决?

最佳答案

调查 this documentation ,您可以使用:Result 属性获取它。

例如:

    Task<int> task1 = myAsyncMethod(); //You can also use var instead of Task<int>
    int i = task1.Result; 

关于c# - 将任务<字符串> 转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35469985/

相关文章:

c# - 如何在 XNA 中永久删除敌方 Sprite

javascript - 从通用共享应用程序访问类库

c# - ListView 项中的多个文本项

javascript - claimBarcodeScanner.SetActiveSymbologiesAsync 的 JavaScript 实现是否有效?

c# - HTMLAgilityPack 剥离 html

c# - 从 .NET Core 注销 IdentityServer4 让我重新登录

c# - 如何取消await Task.Delay()?

asp.net - 异步操作超过页面超时(尝试将 HttpRequestMessage 与 ASP.NET WebForms 页面一起使用)

c# - 等价于 C# 中的 sprintf?

c# 异步等待按钮单击