C#序列化JSON数组而不使用类

Posted

技术标签:

【中文标题】C#序列化JSON数组而不使用类【英文标题】:C# Serialize JSON array without using class 【发布时间】:2022-01-12 16:35:51 【问题描述】:

我正在尝试在 c# 中序列化这个 json 结构,并且想知道如何在我的下面的结构中序列化地址数组而不必使用类

结构如下


    "Name":"Mark",
    "Addresses":[
      
        "address":"1234 Main street",
      ,
      
        "address":"1234 Pine Street",
      ],

这是我使用 JsonSerializer 序列化并且只序列化一个地址的方法

 string jsonObject = JsonSerializer.Serialize(new
                    
                        name = "Mark",
                        Addresses = new
                        
                            address= "1234 Main street"
                        ,
                    );

如何序列化其他地址

【问题讨论】:

Addresses = new [] new address= "1234 Main street" , new .…, 【参考方案1】:

需要实例化一个集合类型,比如数组:

string jsonObject = JsonSerializer.Serialize(new

    name = "Mark",
    Addresses = new[]
    
        new  address = "1234 Main street" 
    ,
);

Working Example

【讨论】:

谢谢你的帮助

以上是关于C#序列化JSON数组而不使用类的主要内容,如果未能解决你的问题,请参考以下文章

C# json反序列化 对象中嵌套数组 (转载)

使用C# json 二维数组 反序列化

无法将 JSON 数组反序列化为 C# 对象 [关闭]

Unity C# JSON 不会序列化私有二维数组?

在 C# 中将 JSON 数组反序列化为对象

C# JSON 反序列化:如何从 JSON 对象数组中获取值 [重复]