繁体   English   中英

具有空json数组的C#json对象

[英]C# json object with empty json array

我有一个返回的json对象,其中包含一个空的json数组

{[]}

编辑:

如何在if语句中检查此内容?

        string arrayData = string.Empty;

        if (response.Contains("\"data\":"))
        {
            JToken root = JObject.Parse(response);
            JToken data = root["data"];
            if (data != null)
            {
                arrayData = data.ToString();
            }
        }
        else
        {
            arrayData = response;
        }

        var responseDatas = JsonConvert.DeserializeObject<dynamic>(arrayData);

在这里,responseDatas现在是

{[]}

首先,这是无效的JSON。 数组应有一个名称,如下所示:

{ list: [] }

其次,您可以使用JSON.NET反序列化JSON,然后测试结果:

public class ClassWithList
{
    public List<object> list { get; set; }
}

var o = JsonConvert.DeserializeObject<ClassWithList>(json);

if (o.list != null && o.list.Count > 0)
{ }

json无效(在原始问题和接受的答案中)。 您应该使用双引号...

{
    "list": []
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM