title: Json.net deserialization null guid case
body: <p>I'm deserializing an object using <code>Json.NET</code> that contains a private field of type Guid and a public property for that field. When the value for my <code>Guid</code> is null in my json I want to assign <code>Guid.Empty</code> to my field. </p>
  
  <pre><code>public class MyClass
  {
      private Guid property;
      public Guid Property
      {
          get { return property; }
          set 
          {
              if (value == null)
              {
                  property = Guid.Empty;
              }
              else
              {
                  property = value;
              }
          }
      }
  }
  </code></pre>
  
  <p>But the <code>deserializer</code> wants to access the private field, cause I get this error when I try to deserialize: </p>
  
  <blockquote>
    <p>Error converting value {null} to type 'System.Guid'. Path
    '[0].property', line 6, position 26.</p>
  </blockquote>
  
  <p>How can I make it ignore the private field and use the public property instead?</p>