C# NewtonJson Jarray проверка нулевой / пустой ошибки
Как мы можем проверить, является ли массив json пустым или пустым?
Json:
{
"productList": [
{
"id": 2440,
"serviceStatus": 1,
"listOfBillProductsExtras": [
{
"id": 2441,
"amount": 1,
"balance": 2,
}
],
"deskName": "Desk 1",
"onlyTime": "15:25"
},
{
"id": 2441,
"serviceStatus": 1,
"listOfBillProductsExtras": [ ],
"deskName": "Desk2",
"onlyTime": "15:27"
}
]
}
я попробую
JArray productList = JArray.Parse(content["productList"].ToString());
но это не сработало. (Был exp. Null Referance) Итак, я хочу проверить, массив listOfBillProductsExtras имеет значение null или пустой. Если не пусто, я получу идентификатор, сумму, баланс.
2 ответа
Разобрать объект Json в jArray:
public ActionResult Method(object[] data)
{
var productList = Json.ParseJsonObjectToJArray(data, "productList");
if(jArray.Count > 0)
{
}
}
public class Json
{
public static JArray ParseJsonObjectToJArray(object[] data, string objectName)
{
dynamic jObject = JObject.Parse(data[0].ToString());
var info = jObject[objectName];
return info;
}
}
Это должно работать
var found = JObject.Parse(json).SelectToken("productList[0].listOfBillProductsExtras[0].id");
где json - ваша входная строка. найденная переменная может быть проверена на нулевое значение.