using Newtonsoft.Json; namespace YLErp.Converter2 { public class QuotedInt16Converter : JsonConverter { public override short ReadJson(JsonReader reader, Type objectType, short existingValue, bool hasExistingValue, JsonSerializer serializer) { if (reader.TokenType == JsonToken.Null) { return existingValue; } else { var str = reader.Value?.ToString(); if (string.IsNullOrEmpty(str)) { return existingValue; } if (short.TryParse(str, out var number)) { return number; } else { return existingValue; } } } public override void WriteJson(JsonWriter writer, short value, JsonSerializer serializer) { writer.WriteValue(value); } } }