从JSON解析为字典
我有一些看起来像这样的json:
"lines":
{
"0010": {
"ProvCountyCode": "047",
"ProvNo": "770887",
"ParNonparCode": "K",
"ParNonparCode2": "K",
},
"0020" {
"ProvCountyCode": "047",
"ProvNo": "0888",
"ParNonparCode": "K",
"ParNonparCode2": "K",
},
...
Visual Studio (C#) 的“粘贴特殊/从JSON生成类”会生成类似这样的内容:
public class Lines
{
public _0010 _0010 { get; set; }
public _0020 _0020 { get; set; }
}
public class _0010
{
public string ProvCountyCode { get; set; }
public string ProvNo { get; set; }
public string ParNonparCode { get; set; }
public string ParNonparCode2 { get; set; }
}
public class _0020
{
public string ProvCountyCode { get; set; }
public string ProvNo { get; set; }
public string ParNonparCode { get; set; }
public string ParNonparCode2 { get; set; }
}
// ...
对我来说这看起来并不是很有用。往下还有一个名为 lineSummary 的json数组,其中包含一个值 LineID。
我在想我想像下面这样引用字典:
Lines[LineId]
我不能更改JSON。我正在寻找创建一个能够容纳它的类
解决方案
正如dbc所说,你可以像对待JSON一样使用字典:
public class Lines
{
public Dictionary<string, Line> lines { get; set; } = new();
}
属性名(此处为 0010 和 0020)将成为键名。这对于 System.Text.Json 和 Newtonsoft 都适用。
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。