Si ma réponse a la clé "erreur", j'ai besoin de traiter l'erreur et d'afficher une boîte d'avertissement.
Existe-t-il une méthode "haskey" dans json.net? Comme:
var x= JObject.Parse(string_my);
if(x.HasKey["error_msg"])
MessageBox.Show("Error!")
Il suffit d'utiliser x["error_msg"]
. Si la propriété n'existe pas, elle retourne null
.
JObject
implémente IDictionary<string, JToken>
, vous pouvez donc utiliser:
IDictionary<string, JToken> dictionary = x;
if (dictionary.ContainsKey("error_msg"))
... ou vous pouvez utiliser TryGetValue
. Il implémente les deux méthodes en utilisant une implémentation d'interface explicite, vous ne pouvez donc pas les utiliser sans conversion préalable en IDictionary<string, JToken>
bien que.
JObject.ContainsKey(string propertyName)
a été créé comme méthode publique dans la version 11.0.1
Documentation - https://www.newtonsoft.com/json/help/html/M_Newtonsoft_Json_Linq_JObject_ContainsKey.htm