使用 C# [不确定对象名称] 解析 JSON

本文关键字:解析 JSON 对象 不确定 使用 | 更新日期: 2023-09-27 18:30:51

我将使用 C# 和 Newtonsoft.JSON 将 JSON 数据解析为类。但是 JSON 数据与平时略有不同。下面是 JSON 数据示例:

{
    "ip_addresses": [
        "192.168.1.1"
     ],
    "ptr": {
        "192.168.1.1": "www.example.com"
    }
}

所以问题是 ptr 中的 IP 由于 ip_addresses 中的 IP 而发生变化。我已成功将ip_addresses数据解析到列表中。但是我不知道接下来如何处理列表存储的IP地址。

class Server
{
    public string hostname { get; set; }
    public List<string> ip_addresses { get; set; }
    public override string ToString() 
    {
        string ip_set = string.Empty;
        foreach (string ip in ip_addresses)
        {
            ip_set += string.Format("{0} ", ip);
        }
        return string.Format("{0} {1}'n", hostname, ip_set)
    }
}
class Program
{
    static void Main(string[] args)
    {
        //json data is from the web response
        string responseContent = reader.ReadToEnd();
        Server server = JsonConvert.DeserializeObject<Server>(responseContent);
        Console.WriteLine(server);
        Console.ReadKey();
    }
}

非常感谢:D

使用 C# [不确定对象名称] 解析 JSON

猜测ptr不是一个数组。
那么以下属性可能有效

public Dictionary<string,string> ptr {get; set;} 

如果它是一个数组,则使其List<Dictionary<string,string>>

我在手机上,还没有检查过。请验证

更新:忘记添加
使用ptr["ipAddress"]访问它