title: Custom converter overriding ContractResolver
body: <p>I'm trying to use a custom converter modifying object types as described <a href="http://james.newtonking.com/json/help/html/CustomJsonConverter.htm" rel="nofollow">here</a>, together with the <a href="http://james.newtonking.com/json/help/html/T_Newtonsoft_Json_Serialization_CamelCasePropertyNamesContractResolver.htm" rel="nofollow">CamelCasePropertyNamesContractResolver</a>.</p>
  
  <p>So the converter is like this (doing nothing here):</p>
  
  <pre><code>class MyJsonConverter : JsonConverter
  {
      public override bool CanConvert(Type objectType)
      {
          return objectType.IsSubclassOf(typeof(MyType));
      }
  
      public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
      {
          throw new NotImplementedException();
      }
  
      public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
      {
          JToken t = JToken.FromObject(value);
          t.WriteTo(writer);
      }
  }
  </code></pre>
  
  <p>And I use it like this:</p>
  
  <pre><code>var jsonSerializationSettings = new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver() };
  jsonSerializationSettings.Converters.Add(new MyJsonConverter());
  var camelCaseJsonOutput = await JsonConvert.SerializeObjectAsync(myObject, Formatting.None, jsonSerializationSettings);
  </code></pre>
  
  <p>But the serialized output shows properties starting in upper-case, so it seems that using my converter somehow cancelled the camel-case contract resolver...</p>