"message":{
"type":"text",
"text":"a message to the service",
"media":"http://example.com",
"location":{
"lat":50.76891,
"lon":6.11499
},
"tracking_data":"tracking data"
}
Run Code Online (Sandbox Code Playgroud)
如何获得 Json、lat 和 lon 子元素的值?
JToken message = data.SelectToken("message");
var lat = message.Value<double>("lat");
Run Code Online (Sandbox Code Playgroud)
这显示 0,而不是实际值。
此问题的快速解决方案是以下代码。
这里的重点是,您必须尊重 JSON 输入的层次结构。lat不是直接在 中message,而是在location对象中。
var data = JObject.Parse(@"{
""message"": {
""type"":""text"",
""text"":""a message to the service"",
""media"":""http://example.com"",
""location"": {
""lat"":50.76891,
""lon"":6.11499
},
""tracking_data"":""tracking data""
}
}");
var location = data.SelectToken("message.location");
var lat = location.Value<double>("lat");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5909 次 |
| 最近记录: |