title: Json.Net Deserialize Returning Nulls
body: <p>I'm using the Petfinder API and trying to return a root object in my C# code. I used the Json class generator to generate the classes, but the Deserialize function is returning nulls.</p>
  
  <p>This is my C# code:</p>
  
  <pre><code>using (var client = new WebClient())
          {
              var json = new WebClient().DownloadString("http://api.petfinder.com/shelter.getPets?format=json&amp;key=&lt;key&gt;&amp;id=&lt;id&gt;");
              Petfinder deserializedPet = JsonConvert.DeserializeObject&lt;Petfinder&gt;(json);
  
          }
  </code></pre>
  
  <p>The Petfinder object is defined as:</p>
  
  <pre><code>internal class Petfinder
  {
  
      [JsonProperty("@xmlns:xsi")]
      public string XmlnsXsi { get; set; }
  
      [JsonProperty("lastOffset")]
      public LastOffset LastOffset { get; set; }
  
      [JsonProperty("pets")]
      public Pets Pets { get; set; }
  
      [JsonProperty("header")]
      public Header Header { get; set; }
  
      [JsonProperty("@xsi:noNamespaceSchemaLocation")]
      public string XsiNoNamespaceSchemaLocation { get; set; }
  }
  </code></pre>
  
  <p>The first few lines of the json string is as follows:</p>
  
  <p>{"@encoding":"iso-8859-1","@version":"1.0","petfinder":{"@xmlns:xsi":"<a href="http://www.w3.org/2001/XMLSchema-instance" rel="nofollow">http://www.w3.org/2001/XMLSchema-instance</a>","lastOffset":{"$t":"25"},"pets":{"pet":[{"options":{"option":[{"$t":"hasShots"},{"$t":"altered"},{"$t":"housetrained"}]},"breeds":{"breed":{"$t":"Domestic Medium Hair"}},"shelterPetId":{},"status":{"$t":"A"},"name":{"$t":"Jasmine"},... </p>
  
  <p>If that helps at all. </p>
  
  <p>I'm a newbie to json.net. What am I doing wrong?</p>