title: Ignoring [JsonConverter] attribute for one serialisation call
body: <p>I've made a custom Json.NET <a href="https://www.newtonsoft.com/json/help/html/T_Newtonsoft_Json_JsonConverter.htm" rel="nofollow noreferrer">JsonConverter</a> which contains code like the following:</p>
  <pre><code>public class MyConverter : JsonConverter 
  {
    public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
    {
      .
      .
      .
      serializer.Serialize(writer, value);
      .
      .
      .
    }
  }
  
  [JsonConverter(typeof(MyConverter))]
  public class MyJsonClass { 
    .
    .
    .
    public MyContainer&lt;MyJsonClass&gt; x { get; set; }
    .
    .
    .
  }
  </code></pre>
  <p>I would like the call the <code>.Serialize</code> method ignoring the JsonConverter when inside the custom <code>MyConverter</code>. Basically doing my custom business then falling back to the default converter. Note I can't use the trick here of having a thread static variable and setting under recursion (at least in the way I understand), because this JsonConverter can and should be able to recurse into itself, namely when serialising <code>MyContainer&lt;MyJsonClass&gt;</code>, which may contain instances of <code>MyJsonClass</code> which should be serialised by first calling the <code>MyConverter</code> custom converter, before then calling the default converter again.</p>