DotNetCore.SKIT.FlurlHttpCl.../src/SKIT.FlurlHttpClient.Wechat/Converters/Newtonsoft.Json/CommonDateTimeOffsetConverter.cs

33 lines
1022 B
C#

using System;
using System.Globalization;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
namespace Newtonsoft.Json.Converters
{
public class CommonDateTimeOffsetConverter : JsonConverter<DateTimeOffset>
{
private readonly JsonConverter<DateTimeOffset?> _converter = new CommonNullableDateTimeOffsetConverter();
public override bool CanRead
{
get { return true; }
}
public override bool CanWrite
{
get { return true; }
}
public override DateTimeOffset ReadJson(JsonReader reader, Type objectType, DateTimeOffset existingValue, bool hasExistingValue, JsonSerializer serializer)
{
return _converter.ReadJson(reader, objectType, existingValue, hasExistingValue, serializer) ?? default;
}
public override void WriteJson(JsonWriter writer, DateTimeOffset value, JsonSerializer serializer)
{
_converter.WriteJson(writer, value, serializer);
}
}
}