title: Custom JsonConverter for property: get property name
body: <p>I have this sample converter for guid properties:</p>
  
  <pre class="lang-cs prettyprint-override"><code>public class CustomGuidConverter : JsonConverter
  {
      public override bool CanConvert(Type objectType)
      {
          return objectType == typeof (Guid?) || objectType == typeof (Guid);
      }
  
      public override void WriteJson(JsonWriter writer, object oldValue, JsonSerializer serializer)
      {
          if (value != null)
          {
              var newValue = convert(oldValue); // do some conversion
              writer.WriteValue(newValue);
          }
      }
  }
  </code></pre>
  
  <p>using it like this:</p>
  
  <pre class="lang-cs prettyprint-override"><code>public class Outer {
      public int Id { get; set; }
  
      [JsonConverter(typeof(InterfaceLabelConverter))]
      public Guid? ProductFamilyId { get; set; }
  }
  </code></pre>
  
  <p>how can I access the name of the current property in the <code>WriteJson</code> method?
  I want to write the old value to writer with another propertyname like this:</p>
  
  <pre><code>{ Id: 1234, ProductFamilyId: 'newValue', ProductFamilyIdOld: 'oldValue' }
  </code></pre>