2015-11-04 2 views
8

В Java есть хороший метод has, который позволяет проверить, содержит ли объект json ключ или нет. Я использую его так:Как проверить, имеет ли объект json какое-либо свойство

JSONObject obj = ....; // <- got by some procedure 
if(obj.has("some_key")){ 
    // do something 
} 

Я не мог найти такую ​​же функциональность прохладной в newtonsoft.json библиотеки C#. Итак, интересно, какие альтернативы. Благодаря!

+0

См. Мой ответ [здесь] (https://stackoverflow.com/a/47204235/1037314) – Ben

ответ

8

Просто используйте obj ["proprty_name"]. Если свойство не существует, она возвращает нуль

if(obj["proprty_name"] != null){ 
    // do something 
} 
+0

Спасибо, сэр! – Jacobian

1

Вы можете попробовать так:

IDictionary<string, JToken> dict = x; 
if (dict.ContainsKey("some_key")) 

С JSONObject реализует IDictionary<string, JToken>. Вы можете сослаться на MSDN для получения более подробной информации.

+0

Он использует 'Newtonsoft.Json' не' System.Json' – Lucius

Смежные вопросы