Проверьте, существует ли ключ в объекте JSON на C#

Чтобы проверить, существует ли ключ в объекте JSON в C#, вы можете использовать несколько методов. Вот несколько подходов:

  1. Использование класса JObjectиз библиотеки Newtonsoft.Json:

    using Newtonsoft.Json.Linq;
    JObject jsonObject = JObject.Parse(jsonString);
    bool keyExists = jsonObject.ContainsKey("key");
  2. Преобразование объекта JSON в словарь и проверка ключа:

    using System.Web.Script.Serialization;
    var serializer = new JavaScriptSerializer();
    var dictionary = serializer.Deserialize<Dictionary<string, object>>(jsonString);
    bool keyExists = dictionary.ContainsKey("key");
  3. Использование пространства имен System.Text.Json(доступно начиная с.NET Core 3.0 и.NET Standard 2.1):

    using System.Text.Json;
    JsonDocument jsonDocument = JsonDocument.Parse(jsonString);
    JsonElement root = jsonDocument.RootElement;
    bool keyExists = root.TryGetProperty("key", out _);
  4. Десериализация JSON в пользовательский объект и проверка ключа:

    using System.Text.Json;
    var customObject = JsonSerializer.Deserialize<CustomObject>(jsonString);
    bool keyExists = customObject.key != null;

Обратите внимание, что в приведенных выше примерах jsonStringпредставляет собой строку, содержащую данные JSON, а «ключ» — это ключ, наличие которого вы хотите проверить.