title: how to deserialize this JWT into a class with json.net
body: <p>I have a JWT with the following content:</p>
  
  <pre><code>{
      "jti":"b17373d5-2755-435b-916a-9b87c9354427",
      "resource_access":"{"test-app":{"roles":["anonymous"]}}"
  }
  </code></pre>
  
  <p>the issue is the <em>resource_access</em> part:</p>
  
  <p>it it looks like:</p>
  
  <pre><code>dictionary&lt;string, dictionary&lt;string, list&lt;string&gt;&gt;&gt;
  </code></pre>
  
  <p>The problem is that json.net gives this error:</p>
  
  <pre><code> Error converting value "{" to type 'System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.String]]]'. Path 'resource_access', line 1, position 335. ---&gt; System.ArgumentException: Could not cast or convert from System.String to System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.String]]].
  </code></pre>
  
  <p>The json validator at <a href="https://jsonformatter.curiousconcept.com/" rel="nofollow noreferrer">https://jsonformatter.curiousconcept.com/</a> lets this json pass as properly formatted, but I'm not sure it follows the standard to start with.</p>
  
  <p>So, my question is: can this be deserialized without making a custom deserializer?</p>