zoukankan      html  css  js  c++  java
  • 反序列化:接口,抽象类

        [DataContract]
        public abstract class ProductPromotionDetail
        { }
    

      

       [JsonConverter(typeof(ConcreteConverter<ProductPromotionDetail_4>))]
            public ProductPromotionDetail Detail { get; set; }
    

      

      public class ProductPromotionDetail_4 : ProductPromotionDetail
        {}
    

      

      public class ConcreteConverter<T> : JsonConverter
        {
            public override bool CanConvert(Type objectType) => true;
    
            public override object ReadJson(JsonReader reader,
             Type objectType, object existingValue, JsonSerializer serializer)
            {
                return serializer.Deserialize<T>(reader);
            }
    
            public override void WriteJson(JsonWriter writer,
                object value, JsonSerializer serializer)
            {
                serializer.Serialize(writer, value);
            }
        }
    	
    

      

    Refer:https://www.c-sharpcorner.com/UploadFile/20c06b/deserializing-interface-properties-with-json-net/

  • 相关阅读:
    node中fs模块
    node生成excel,动态替换表格内容
    Postgresql存放数组形式的数据
    ubuntu下安装typescript
    随笔6
    excel文件导出相应数据统计内容
    随笔4
    随笔3.2
    随笔2
    随笔1
  • 原文地址:https://www.cnblogs.com/sunzhenyong/p/10882070.html
Copyright © 2011-2022 走看看