title: Deserialize JSON object property to string
body: <p>I have some JSON that has a variety of properties most of which are simple data types.  However, I have one property in the JSON that when I deserialize it to a C# class I simply need it to be deserialized as a string.</p>
  
  <p>Example JSON:</p>
  
  <pre><code>{"simpleProperty": "value1", "json":{"a":"a1", "b":"b1"}}
  </code></pre>
  
  <p>The "json" object has no set structure other than it will be a valid JSON object.</p>
  
  <p>So in the above example the value of "json" is a JSON object -- but when it gets deserialized, I need it as a string.</p>
  
  <p>So if my C# class is:</p>
  
  <pre><code>public class MyClass
  {
      public string SimpleProperty { get; set; }
      public string Json { get; set; }
  }
  </code></pre>
  
  <p>And then if I use: </p>
  
  <pre><code>var myClass = JsonConvert.DeserializeObject&lt;MyClass&gt;(jsonStr);
  </code></pre>
  
  <p>I would like myClass.Json to just be a simple string.</p>
  
  <p>I have looked at creating a custom JsonConverter for this but that seems way too complex for something this simple. I must be be missing something here.  Any direction would be greatly appreciated.</p>
  
  <p>I also saw this post -- but it really doesn't answer the question: <a href="https://stackoverflow.com/questions/9952302/json-net-how-to-deserialize-json-to-object-but-treating-a-property-as-a-string">JSON.Net - How to deserialize JSON to object but treating a property as a string instead of JSON?</a></p>