C# 将某些JSON属性反序列化为子类

C# 将某些JSON属性反序列化为子类,c#,json,serialization,C#,Json,Serialization,我想有一些属性可以让我很容易地完成这项工作,但我不知道该配置应该是什么。您可以通过修饰来选择序列化哪些属性 添加[ScriptIgnore]将导致属性无法序列化。这并不是真正创建子类,而是提供了一种只序列化选定属性的方法 免责声明:我只使用JavaScriptSerializer类来创建JSON 示例: public static T DeserializeJson<T>(this string json) { return JsonConvert.D

我想有一些属性可以让我很容易地完成这项工作,但我不知道该配置应该是什么。

您可以通过修饰来选择序列化哪些属性

添加[ScriptIgnore]将导致属性无法序列化。这并不是真正创建子类,而是提供了一种只序列化选定属性的方法

免责声明:我只使用
JavaScriptSerializer
类来创建JSON

示例:

    public static T DeserializeJson<T>(this string json)
    {
        return JsonConvert.DeserializeObject<T>(json);
    }
公共类ApiResponse:IApiResponse
{
[脚本忽略]
公共长引号维护{get;set;}
[脚本忽略]
公共长QuotaMax{get;set;}
公共int回退{get;set;}
公共bool HasMore{get;set;}
}

在上面的类中,只有
回退
HasMore
属性将被序列化。

我知道,我可以使用
[JsonIgnore]
来实现这一点,但我想将这三个属性序列化到子类中。
    public static T DeserializeJson<T>(this string json)
    {
        return JsonConvert.DeserializeObject<T>(json);
    }
public class ApiResponse<T> : IApiResponse<T>
{
    [ScriptIgnore]
    public long QuotaRemaining { get; set; }
    [ScriptIgnore]
    public long QuotaMax { get; set; }
    public int Backoff { get; set; }
    public bool HasMore { get; set; }
}