Können nicht umgewandelt Newtonsoft.Json.Linq -.JArray zu Newtonsoft.Json.Linq -.JToken. Fehler immer wenn ich den pass json
Ich übergeben zu müssen, die überprüft Kästchen code in C# in JavaScript. Ich war in der Lage, senden Sie den code per JSON. Und meine JSON-Wert kommt als JArray. Und ich bin immer die Ausnahme in den Titel.
JSON:
{
"Items": [
"100066",
"100067"
]
}
C#:
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<string>("Items");
RequestDataAccess rda = new RequestDataAccess();
decimal reqId = decimal.Parse(lineItems);
rda.ApproveReject_Request(reqId, "A", "");
return Json(new { result = "success" });
}
Client-Seite:
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"
});
}
Mir bitte helfen diesen Fehler zu beheben.
Und das ist der Fehler???
Ich sehe nicht eine Zeile umwandeln JArray zu einem JToken...
Ich sehe nicht eine Zeile umwandeln JArray zu einem JToken...
InformationsquelleAutor Sinthuja.Chandra | 2014-03-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
In dieser situation, ich glaube nicht, dass
JsonConvert.DeserializeObject
ist die geeignete Methode zu verwenden. Der Fehler zum konvertieren vonJArray
zuJToken
wahrscheinlich tritt auf, weilDeserializeObject
versucht, direkt Deserialisieren zuJObject
, die scheitern, weil Sie nicht finden Sie die erforderlichen Felder aufJObject
.Versuchen Sie es mit
JObject.Parse(json)
zu bekommendynamic
Objekt. Sie können es verwenden, wie dies hinterher:InformationsquelleAutor Chris Mantle
Kann es umgewandelt werden, aus JArray Liste als
array.ToObject<List<TargetDataType>>();
Helfen gerne danke!!!
InformationsquelleAutor SharK
InformationsquelleAutor Sinthuja.Chandra