title: How to deserialize an array of objects when the first item is the count of items to follow
body: <p>I have the following problem with deserializing json to c#-objects.</p>
  
  <p>I have a json-string, something like this:</p>
  
  <pre><code>string data = 
  @"{
      'response':
          [
              3,
              {
                  'id': 1, 
                  'name': 'john'
              },
              {
                  'id': 1, 
                  'name': 'john'
              },
              {
                  'id': 1, 
                  'name': 'john'
              }
          ]
   }";
  </code></pre>
  
  <p>And classes for deserialization:</p>
  
  <pre><code>class Response 
  {
      [JsonProperty(PropertyName = "response")]
      Item[] Items {get; set; }
  }
  
  class Item
  {
      [JsonProperty(PropertyName = "id")]
      public int Id{get; set; }
  
  
      [JsonProperty(PropertyName = "name")]
      public int Id{get; set; }
  }
  </code></pre>
  
  <p>And then i try to deserialize it:</p>
  
  <pre><code> var res = JsonConvert.DeserializeObject&lt;Response&gt;(data);
  </code></pre>
  
  <p>Deserialization rases an exception with following message: <strong>"Error converting value 3 to type 'Item'. Path 'response[0]', line 1, position 19."</strong>
   Obvioiusly it happend because array 'response' in data string contains literal "3" that describes a response's length. I would like to know, can i do deserialization corretly without writing custom deserialization logic, by means of json.net only? Or do i need to create custom deserialization logic? </p>