C# 用斜杠反序列化.NET-Property中的JSON
我有这样的JSON,我正试图反序列化成一个.NETCore3.1C#对象 我的课程是这样的:C# 用斜杠反序列化.NET-Property中的JSON,c#,json,.net-core,json-deserialization,C#,Json,.net Core,Json Deserialization,我有这样的JSON,我正试图反序列化成一个.NETCore3.1C#对象 我的课程是这样的: class Meta { [JsonProperty("/workers/assignments/myItems")] public ItemsMeta Items {get;set;} } class ItemsMeta { public CodeList codeList { get; set; } } class
class Meta {
[JsonProperty("/workers/assignments/myItems")]
public ItemsMeta Items {get;set;}
}
class ItemsMeta {
public CodeList codeList { get; set; }
}
class CodeList {
public List<ListItem> listItems { get; set; }
}
public class ListItem {
public string codeValue { get; set; }
public string shortName { get; set; }
public string longName { get; set; }
}
类元{
[JsonProperty(“/workers/assignments/myItems”)]
公共项数据项{get;set;}
}
类项目数据{
公共代码列表代码列表{get;set;}
}
类代码表{
公共列表列表项{get;set;}
}
公共类列表项{
公共字符串代码值{get;set;}
公共字符串短名称{get;set;}
公共字符串longName{get;set;}
}
但是var meta=JsonConvert.DeserializeObject(json)代码>对Items属性的引用为空
我做错了什么?如果没有自定义JSON解析器,这是可能的吗?我已经尝试了Newtonsoft和System.Text.Json。您的meta
标记位于另一个对象或RootObject
中。将其添加到模型中,并将json反序列化到该对象:
public class Meta
{
[JsonProperty("/workers/assignments/myItems")]
public ItemsMeta Items { get; set; }
}
public class ItemsMeta
{
public CodeList codeList { get; set; }
}
public class CodeList
{
public List<ListItem> listItems { get; set; }
}
public class ListItem
{
public string codeValue { get; set; }
public string shortName { get; set; }
public string longName { get; set; }
}
public class Rootobject
{
public Meta Meta { get; set; }
}
公共类元数据
{
[JsonProperty(“/workers/assignments/myItems”)]
公共项数据项{get;set;}
}
公共类项目数据
{
公共代码列表代码列表{get;set;}
}
公共类代码表
{
公共列表列表项{get;set;}
}
公共类列表项
{
公共字符串代码值{get;set;}
公共字符串短名称{get;set;}
公共字符串longName{get;set;}
}
公共类根对象
{
公共元{get;set;}
}
现在反序列化:
var root = JsonConvert.DeserializeObject<Rootobject>(json);
var root=JsonConvert.DeserializeObject(json);
var root = JsonConvert.DeserializeObject<Rootobject>(json);