對返回的json資料重寫格式,用特性JsonConverter
阿新 • • 發佈:2021-11-03
繼承JsonConverter特性
public class ObjJsonConverter<T> : JsonConverter { public override bool CanConvert(Type objectType) { return objectType == typeof(T); } //讀取 public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) {if (reader.TokenType.Equals(JsonToken.String)) { string data = reader.ToString();//讀取字串,然後解密 JObject jArray = JObject.FromObject(data); var obj = serializer.Deserialize<T>(jArray.CreateReader()); return obj; }else { JObject jArray = JObject.Load(reader); var obj = serializer.Deserialize<T>(jArray.CreateReader()); return obj; } } //寫資料 public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { writer.WriteValue(value); } }