title: JSON Deserialization Type is not supported for deserialization of an array
body: <p><strong>I've read two other posts regarding the deserialization error, but I've not gotten anywhere so I'm posting my own question.</strong></p>
  
  <p>I have a WCF service that's returning JSON.  Upon deserialization of a specific type, it fails.  </p>
  
  <p>In an effort to allow you to easily replicate the error, I've hardcoded the JSON below along with the call.</p>
  
  <p>Essentially you should be able to copy/paste the code below and see it fail.</p>
  
  <p>The consumer needs to deserialize this into a working object.  s.Deserialize fails with the error message noted in the Title.</p>
  
  <p><em>NOTE: I realize there are slashes in my JSON.  Those are there for convenience to escape the quotes.  Thanks.</em></p>
  
  <p>Example code:</p>
  
  <pre><code>  var s = new JavaScriptSerializer();
  
          var jstr =
              "[{\"UserId\":1,\"WorkoutId\":1,\"WorkoutInfo\":[\"Step 1\",\"Step 2\"]},{\"UserId\":2,\"WorkoutId\":2,\"WorkoutInfo\":[\"Step 1a\",\"Step 2a\"]},{\"UserId\":5,\"WorkoutId\":0,\"WorkoutInfo\":[\"new work1\",\"new work 1\",\"new work 1\"]}]";
  
          Workout blah = s.Deserialize&lt;Workout&gt;(jstr);
          var response = ServicePOST&lt;Workout&gt;("AddUserWorkout", workout);
  </code></pre>
  
  <p>and Workout class:</p>
  
  <pre><code>public class Workout
  {
      public int UserId { get; set; }
      public List&lt;string&gt; WorkoutInfo { get; set; }
  }
  </code></pre>