title: Json.NET deserializing DateTimeOffset value fails for DateTimeOffset.MinValue without timezone
body: <p>In my ASP.NET Core Web-API project, I'm getting a HTTP POST call to one of my API controllers.</p>
  
  <p>While evaluating the JSON payload and deserializing its contents, Json.NET stumbles upon a DateTime value of <code>0001-01-01T00:00:00</code> and can't convert it to a DateTimeOffset property.</p>
  
  <p>I notice that the value propably should represent the value of DateTimeOffset.MinValue, but its lack of a timezone seems to trip the deserializer up. I can only imagine that the DateTimeOffset.Parse tries to translate it to the hosts current timezone, which results in an underflow of DateTimeOffset.MinValue.</p>
  
  <p>The property is pretty simplistic:</p>
  
  <pre><code>[JsonProperty("revisedDate", NullValueHandling = NullValueHandling.Ignore)]
  public DateTimeOffset? RevisedDate { get; set; }
  </code></pre>
  
  <p>And here is the response sent to the client:</p>
  
  <pre><code>{
      "resource.revisedDate": [
          "Could not convert string to DateTimeOffset: 0001-01-01T00:00:00. Path 'resource.revisedDate', line 20, position 44."
      ]
  }
  </code></pre>
  
  <p>I'm using Newtonsoft.Json v11.0.2 and currently am in UTC + 2 (Germany).  The exception traceback and error message are here: <a href="https://pastebin.com/gX9R9wq0" rel="noreferrer">https://pastebin.com/gX9R9wq0</a>.</p>
  
  <p>I can't fix the calling code, so I have to fix it on my side of the line.</p>
  
  <p>But the question is: How?</p>