Files
Umbraco-CMS/src/Umbraco.Core/Serialization/UdiRangeJsonConverter.cs
2017-07-20 11:21:28 +02:00

27 lines
787 B
C#

using System;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
namespace Umbraco.Core.Serialization
{
public class UdiRangeJsonConverter : JsonConverter
{
public override bool CanConvert(Type objectType)
{
return typeof(UdiRange).IsAssignableFrom(objectType);
}
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
{
writer.WriteValue(value.ToString());
}
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
{
var jo = JToken.ReadFrom(reader);
var val = jo.ToObject<string>();
return val == null ? null : UdiRange.Parse(val);
}
}
}