kreta/Kreta.BusinessLogic/Helpers/SystemSettings/SystemSettingDateConverter.cs
2024-03-13 00:33:46 +01:00

30 lines
921 B
C#

using System;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
namespace Kreta.BusinessLogic.Helpers.SystemSettings
{
class SystemSettingDateConverter : DateTimeConverterBase
{
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
{
DateTime date;
if (DateTime.TryParse(reader.Value.ToString(), out date))
{
return date;
}
var value = reader.Value.ToString().ToUpper();
value = value.Replace("YYYY", "2000");
value = value.Replace("MM", "01");
value = value.Replace("DD", "01");
return DateTime.Parse(value);
}
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
{
throw new NotImplementedException();
}
}
}