title: Cannot cast Newtonsoft.Json.Linq.JArray to Newtonsoft.Json.Linq.JToken. Error getting when I pass the json
body: <p>I need to pass the checked check-boxes code to C# from JavaScript. I was able to send the code via JSON. And my JSON value comes as a JArray. And I am getting the exception in the title.</p>
  
  <p><strong>JSON:</strong></p>
  
  <pre><code>{
    "Items": [
      "100066",
      "100067"
    ]
  }
  </code></pre>
  
  <p><strong>C#:</strong></p>
  
  <pre><code>public ActionResult UpdateTransportRequests()       
  {
      string json;
      using (var reader = new StreamReader(Request.InputStream))
      {
          json = reader.ReadToEnd();
      }
  
      JObject jo = (JObject)JsonConvert.DeserializeObject(json);
  
      string lineItems = jo.Value&lt;string&gt;("Items");
  
      RequestDataAccess rda = new RequestDataAccess();
      decimal reqId = decimal.Parse(lineItems);
      rda.ApproveReject_Request(reqId, "A", "");
  
      return Json(new { result = "success" });
  }
  </code></pre>
  
  <p><strong>Client Side:</strong></p>
  
  <pre><code>function approveAll(requestid) {
      var items = [];
  
      $('#grid tbody').find('input:checkbox:checked').each(function (index, item) {
          var rowIndex = $(this).closest('tr').index();
          items.push($('#grid tbody').find('tr:eq(' + rowIndex + ')').find('td:eq(1)').text().replace('TR-', ''));
  
      });
      $.ajax({
          type: "POST",
          url: '@Url.Action("UpdateTransportRequestsAll", "TransportRequest")',
          contentType: "application/json; charset=utf-8",
          data: JSON.stringify({ "Items": items }),
          success: function (response) {
              alert(response.result);
          },
          dataType: "json"
      });
  }
  </code></pre>
  
  <p>Please help me to fix this error.</p>