繁体   English   中英

Newtonsoft 序列化对象列表

[英]Newtonsoft Serialize the List of Objects

有没有办法在没有任何[ ]的情况下生成List <object>的序列化字符串

我们正在使用以下代码进行序列化

JsonConvert.SerializeObject(data)

[
  {
    "SessionId": "6d1ea52b-9f0c-4c32-835d-49e6db22efee",
    "ComponentName": "WebRole",
    "Message": "X"
  },
  {
    "SessionId": "6d1ea52b-9f0c-4c32-835d-49e6db22efee",
    "ComponentName": "WebRole",
    "Message": "Y"
  },
  {
    "SessionId": "6d1ea52b-9f0c-4c32-835d-49e6db22efee",
    "ComponentName": "WebRole",
    "Message": "Z"
  },
  {
    "SessionId": "6d1ea52b-9f0c-4c32-835d-49e6db22efee",
    "ComponentName": "WebRole",
    "Message": "XY"
  },
  {
    "SessionId": "6d1ea52b-9f0c-4c32-835d-49e6db22efee",
    "ComponentName": "WebRole",
    "Message": "XYZ",
    "Payload": "X>>1"
  }
]

有没有办法删除上面的[] ,我有解决方法来在序列化字符串上调用Trim('[')Trim(']') 是否有任何从 NewtonSoft 开箱即用的设置删除[] ,我也不想使用匿名对象。

不可能,如果data是一个集合,那么JsonConvert将返回一个JSON数组。 您可以按照声明使用Trim('[').Trim(']')修改输出字符串,但JSON无效。

您正在尝试使用 List,而不是 Map/Dictionary,但您不希望 List 附带的数组行为(但不是 Dictionary/Map)。

把这些弄清楚,你会发现在许多编程语言中使用数据更容易;)

https://stackoverflow.com/a/4131714/901899

暂无
暂无

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

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