Ejemplo n.º 1
0
        public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
        {
            if (reader.TokenType == JsonToken.Null)
            {
                return(string.Empty);
            }
            if (reader.TokenType == JsonToken.String)
            {
                return(serializer.Deserialize(reader, objectType));
            }

            var token = JArray.FromObject(existingValue);

            var priceQuantity = new PriceQuantityCollection();

            foreach (var child in token)
            {
                var array    = (JArray)child;
                var price    = Convert.ToDouble(array[0].ToString());
                var quantity = Convert.ToDouble(array[1].ToString());
                priceQuantity.Set(price, quantity);
            }

            return(priceQuantity);
        }