###前提・実現したいこと
以下の通り、どの様なオブジェクトになるか不明な場合どのようにnull判定をするのが一般的でスマートなのでしょうか。
JSON
1{ 2 "response": { 3 "update": { ←ここが変わる 4 "value": true 5 } 6 } 7}
- update
C#
1var json = (dynamic)JsonConvert.DeserializeObject(@"{""result"": {""update"": {""value"": true}}}"); 2// ちゃんと値が取れる 3Console.WriteLine(json.result.update.value);
- delete
C#
1var json = (dynamic)JsonConvert.DeserializeObject(@"{""result"": {""delete"": {""value"": true}}}"); 2// keyがdeleteになっているのでエラーが発生する 3Console.WriteLine(json.result.update.value);
現在、以下のようにしてますが美しくありません。
C#
1var json = (dynamic)JsonConvert.DeserializeObject(@"{""result"": {""delete"": {""value"": true}}}"); 2 3if(json.result.update!= null) 4{ 5 Console.WriteLine(json.result.update.value); 6} else if (json.result.delete != null) { 7 Console.WriteLine(json.result.delete.value); 8} else if (json.result.add!= null) { 9 Console.WriteLine(json.result.add.value); 10} 11...
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/06/15 10:30