protected JsonSerializer getCustomSerializer()
        {
            JsonSerializer jsonSer = new JsonSerializer();

            //Don't serialize stuff that is null
            jsonSer.NullValueHandling = NullValueHandling.Ignore;

            //Don't serialize any properties that start with two underscores
            PrefixBasedPropertyExcludingContractResolver contractResolver = new PrefixBasedPropertyExcludingContractResolver("__");

            jsonSer.ContractResolver = contractResolver;

            //Register our custom type converters
            foreach (Type objectType in typeConverters.Keys)
            {
                jsonSer.Converters.Add(
                    new JsonTypeConverterWrapper(
                        (IJsonTypeConverter)typeConverters[objectType], this));
            }

            //Add a built in converter to do the right thing with dates and enums
            jsonSer.Converters.Add(new IsoDateTimeConverter());
            jsonSer.Converters.Add(new StringEnumConverter());

            return(jsonSer);
        }
        protected JsonSerializer getCustomSerializer()
        {
            JsonSerializer jsonSer = new JsonSerializer();

            //Don't serialize stuff that is null
            jsonSer.NullValueHandling = NullValueHandling.Ignore;

            //Don't serialize any properties that start with two underscores
            PrefixBasedPropertyExcludingContractResolver contractResolver = new PrefixBasedPropertyExcludingContractResolver("__");
            jsonSer.ContractResolver = contractResolver;

            //Register our custom type converters
            foreach (Type objectType in typeConverters.Keys) {
                jsonSer.Converters.Add(
                    new JsonTypeConverterWrapper(
                        (JsonTypeConverter)typeConverters[objectType], this));
            }

            //Add a built in converter to do the right thing with dates and enums
            jsonSer.Converters.Add(new IsoDateTimeConverter());
            jsonSer.Converters.Add(new StringEnumConverter());

            return jsonSer;
        }