[英]Iterate through JSON doc C#
我正在嘗試創建一個簡單的應用程序,該應用程序將從Google Maps API中獲取JSON文檔並對其進行迭代,以顯示路線,持續時間和距離的每一段。
我已經得到顯示第一回合,但我不知道如何使框重復。 也許是一個foreach循環? 我是新手,我真的不確定。
var from = origin.Text;
var to = destination.Text;
var requesturl = @"http://maps.googleapis.com/maps/api/directions/json?origin="
+ from + "&alternatives=false&units=imperial&destination="
+ to + "&sensor=false";
string content = file_get_contents(requesturl);
JObject o = JObject.Parse(content);
string distance = (string)o.SelectToken("routes[0].legs[0].distance.text");
string instructions =
(string) o.SelectToken("routes[0].legs[0].steps[0].html_instructions");
txtDistance.Text = distance;
TextBox1.Text = instructions;
您可以反序列化整個JSON響應,並使用對象來迭代結果。 這比硬編碼或計算字符串路徑要容易得多。
您可以查看Google Directions C#包裝器的詳細信息
這個答案:將JSON反序列化為C#動態對象? 具有某些類的代碼,這些類使您可以將JSON反序列化為動態C#對象。 聽起來這很適合您的需求。
有了示例json文檔,您可以使用http://json2csharp.com/創建相關合同。 之后,您可以將對象與類型化的屬性一起使用,並輕松地遍歷相關字段。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.