Files
Umbraco-CMS/src/Umbraco.Infrastructure/Serialization/ForceInt32Converter.cs
Mole 0cc3645146 Align namespaces in Serialization to Umbraco.Cms.Infrastructure
This seems like some very Newtonsoft specific things, so I put it infrastructure
2021-02-15 12:42:26 +01:00

29 lines
877 B
C#

using System;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
namespace Umbraco.Cms.Infrastructure.Serialization
{
public class ForceInt32Converter : JsonConverter
{
public override bool CanConvert(Type objectType)
{
return objectType == typeof (object) || objectType == typeof (int);
}
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
{
var jsonValue = serializer.Deserialize<JValue>(reader);
return jsonValue.Type == JTokenType.Integer
? jsonValue.Value<int>()
: serializer.Deserialize(reader);
}
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
{
throw new NotImplementedException();
}
}
}