C# 用斜杠反序列化.NET-Property中的JSON

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

我有这样的JSON,我正试图反序列化成一个.NETCore3.1C#对象

我的课程是这样的:

 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);