Метод EnumerateArray
Метод EnumerateArray
работает только на массиве.
На объекте бросает
InvalidOperationException.
Поля объекта -
EnumerateObject.
Синтаксис
foreach (JsonElement item in element.EnumerateArray())
{
}
Пример
Давайте сложить элементы
[1, 2, 3]:
using System;
using System.Text.Json;
class Program
{
static void Main()
{
using JsonDocument doc = JsonDocument.Parse("[1,2,3]");
int sum = 0;
foreach (JsonElement item in doc.RootElement.EnumerateArray())
{
sum += item.GetInt32();
}
int res = sum;
Console.WriteLine(res);
}
}
Результат выполнения кода:
6
Пример
Давайте прочитать первый элемент:
using System;
using System.Text.Json;
class Program
{
static void Main()
{
using JsonDocument doc = JsonDocument.Parse("[1,2,3]");
int res = 0;
foreach (JsonElement item in doc.RootElement.EnumerateArray())
{
res = item.GetInt32();
break;
}
Console.WriteLine(res);
}
}
Результат выполнения кода:
1
Пример
Давайте вызвать метод на объекте:
using System;
using System.Text.Json;
class Program
{
static void Main()
{
using JsonDocument doc = JsonDocument.Parse("{\"Name\":\"abcde\"}");
try
{
foreach (JsonElement item in doc.RootElement.EnumerateArray())
{
}
}
catch (InvalidOperationException)
{
Console.WriteLine("fail");
}
}
}
Результат выполнения кода:
"fail"
Смотрите также
-
EnumerateObject,
поля объекта -
JsonArray,
изменяемый массив -
ValueKind,
Array -
JsonElement,
обзор