下面是我从端点收到的 json 的一部分。
如果您查看下面的 Json,“User-Defined-Network-Name”是一个自定义节点,名称每次都会更改。
如何为此 Json 定义 C# 对象?
"addresses": {
"public": [{
"version": 6,
"address": "2005:4600:788e:0910:1a72:81c0:ff03:c7y6"
},
{
"version": 4,
"address": "197.68.xx.xxx"
}],
"private": [{
"version": 4,
"address": "10.xx.xx.xxx"
}],
"User-Defined-Network-Name": [{
"version": 4,
"address": "192.xxx.x.xxx"
}]
}
这就是我走了多远-
[Serializable]
public class Addresses
{
public List<Public> @public { get; set; }
public List<Private> @private { get; set; }
}
我正在使用“JavascriptSerializer”类反序列化 json。
谢谢, 瑞安
最佳答案
addresses
可以反序列化为类似 Dictionary<string,List<YourClass>>
的类型其中 YourClass
持有 version
和 addresss
.
var obj = new JavaScriptSerializer().Deserialize<Root>(jsonstring);
--
public class Root
{
public Dictionary<string,List<VersionAddress>> addresses;
//Your other fields/properties
}
public class VersionAddress
{
public string version;
public string address;
}
关于c# - 如何将 Json 中的自定义节点反序列化为名称不断变化的 c#?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14368913/