【问题标题】:Why is the JSON returning a null/blank result when parsed as a JObject? C#为什么 JSON 在解析为 JObject 时返回空/空白结果? C#
【发布时间】:2017-10-04 08:45:15
【问题描述】:

我在从 url 收集 JSON 时遇到了一些问题。我成功地将 JSON 作为字符串异步读取,但是当我尝试解析为 JObject 时,它返回 null/blank 结果。

JSON 看起来像这样:

[{"name":"Name","desc":"Desc","id":1}, {"name":"Name","desc":"Desc","id":2}]

这里是代码:

    static public async Task<JObject> getData()
    {
            var httpClientRequest = new HttpClient();
            var result = await httpClientRequest.GetAsync("url");
            var resultString = await result.Content.ReadAsStringAsync();

            System.Diagnostics.Debug.WriteLine(resultString); //returns the json as a string

            var jsonResult = JObject.Parse(resultString);
            System.Diagnostics.Debug.WriteLine(jsonResult); //returns null/blank result
            return jsonResult;
    }

知道我做错了什么吗?

【问题讨论】:

  • 您的数据看起来像一个数组。尝试解析为 JArray 而不是 JObject
  • 根容器是 JSON 数组而不是 JSON 对象。如果您事先不知道 JSON 内容,请使用JArray.Parse()JToken.Parse()
  • 谢谢大家!现在工作:) 干杯。

标签: c# json xamarin xamarin.forms


【解决方案1】:

试试这个

var jsonResult = JArray.Parse(resultString);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-12-30
    • 1970-01-01
    • 1970-01-01
    • 2021-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多