Метод TryGetProperty
Метод TryGetProperty
возвращает false, если поля
нет. При true узел
записывают во второй аргумент.
Жёсткий доступ -
GetProperty.
Синтаксис
bool found = element.TryGetProperty(name, out JsonElement child);
Пример
Давайте найти существующее поле:
using System;
using System.Text.Json;
class Program
{
static void Main()
{
using JsonDocument doc = JsonDocument.Parse("{\"Name\":\"abcde\"}");
bool res = doc.RootElement.TryGetProperty("Name", out JsonElement child);
Console.WriteLine(res);
}
}
Результат выполнения кода:
True
Пример
Давайте прочитать значение при успехе:
using System;
using System.Text.Json;
class Program
{
static void Main()
{
using JsonDocument doc = JsonDocument.Parse("{\"Name\":\"abcde\"}");
doc.RootElement.TryGetProperty("Name", out JsonElement child);
string res = child.GetString();
Console.WriteLine(res);
}
}
Результат выполнения кода:
"abcde"
Пример
Давайте искать отсутствующее
поле abcde:
using System;
using System.Text.Json;
class Program
{
static void Main()
{
using JsonDocument doc = JsonDocument.Parse("{\"Name\":\"abcde\"}");
bool res = doc.RootElement.TryGetProperty("abcde", out JsonElement child);
Console.WriteLine(res);
}
}
Результат выполнения кода:
False
Смотрите также
-
GetProperty,
жёсткий доступ -
EnumerateObject,
обход полей -
JsonObject,
изменяемый объект -
JsonElement,
обзор