Files
zszq-trs/Framework/SharedWebApi/Converters/QuotedInt32Converter.cs
T
2024-05-09 14:06:26 +08:00

37 lines
1011 B
C#

using Newtonsoft.Json;
namespace YLErp.Converter2
{
public class QuotedInt32Converter : JsonConverter<int>
{
public override int ReadJson(JsonReader reader, Type objectType, int 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 (int.TryParse(str, out var number))
{
return number;
}
else
{
return existingValue;
}
}
}
public override void WriteJson(JsonWriter writer, int value, JsonSerializer serializer)
{
writer.WriteValue(value);
}
}
}