Quantcast
Viewing all articles
Browse latest Browse all 2

Answer by StriplingWarrior for Safe JSON navigation

For the exact syntax you mention, you can cast your JObject as dynamic.

var jObj = JsonConvert.DeserializeObject<dynamic>(text);string value1 = jObj.foo?.bar?.baz ?? "default";

Here's a LINQPad sample showing your example working as expected.

If you'd prefer to avoid dynamic (I wouldn't blame you), you can use SelectToken like this:

var jObj = JsonConvert.DeserializeObject<JObject>(text);string value1 = (string)jObj.SelectToken("foo.bar.baz") ?? "default";

http://share.linqpad.net/h4bnui.linq


Viewing all articles
Browse latest Browse all 2

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>