Ejemplo n.º 1
0
        public static JsonConverter GetJsonConverter(object attributeProvider, Type targetConvertedType)
        {
            Type jsonConverterType = JsonTypeReflector.GetJsonConverterType(attributeProvider);

            if (jsonConverterType != null)
            {
                return(JsonConverterAttribute.CreateJsonConverterInstance(jsonConverterType));
            }
            return(null);
        }
Ejemplo n.º 2
0
        public static JsonConverter GetJsonConverter(ICustomAttributeProvider attributeProvider, Type targetConvertedType)
        {
            Type jsonConverterType = JsonTypeReflector.GetJsonConverterType(attributeProvider);

            if (jsonConverterType == null)
            {
                return(null);
            }
            JsonConverter jsonConverter = JsonConverterAttribute.CreateJsonConverterInstance(jsonConverterType);

            if (!jsonConverter.CanConvert(targetConvertedType))
            {
                throw new JsonSerializationException("JsonConverter {0} on {1} is not compatible with member type {2}.".FormatWith(CultureInfo.InvariantCulture, new object[] { jsonConverter.GetType().Name, attributeProvider, targetConvertedType.Name }));
            }
            return(jsonConverter);
        }