JSON Serialize数组在JSON字符串中返回NULL

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSON Serialize数组在JSON字符串中返回NULL相关的知识,希望对你有一定的参考价值。

我正在构建这样的JSON模型

JObject issue_model = JObject.FromObject(new
{
   labels = new[] { "import", "automation"}
}

下面的序列化代码

string request_json = JsonConvert.SerializeObject(issue_model,
                  Newtonsoft.Json.Formatting.Indented,
                  new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }); 

但是,当我尝试从动态值列表中构建它时,如

   list<string> lp_list = new list<string>();
   //lp_list contains a list of string values
   string[] lp_labels = lp_list.ToArray();
   JObject issue_model = JObject.FromObject(new
   {
      labels = jira_labels
   }

我得到了JSON

   "labels": [
  [
    null,
    null
  ]
]

但我期待这个json

“标签”:{“import”,“automation”}

如何使阵列序列化正确

答案

我在控制台应用程序中修改了您的代码。

List<string> lp_list = new List<string>();
lp_list.Add("import");
lp_list.Add("automation");

//lp_list contains a list of string values
//string[] lp_labels = lp_list.ToArray();
JObject issue_model = JObject.FromObject(new
{
    labels = lp_list
});

Console.WriteLine(issue_model);

结果如下: enter image description here

希望它能回答你的问题。

以上是关于JSON Serialize数组在JSON字符串中返回NULL的主要内容,如果未能解决你的问题,请参考以下文章

由数据库某字段存数组引发的json_encode/serialize思考

jquery serializeArray()serialize()增加数据

那些技术php的serialize序列化和json性能测试(上)

serializeArray 与 serialize

JSON和Serialize数据格式的对比

使用 XPath 3.1 fn:serialize 进行 JSON 序列化