C#中的Google Geocoding Json解析问题

C#中的Google Geocoding Json解析问题,第1张

C#中的Google Geocoding Json解析问题

以下是获得所需内容的步骤:

  1. 将您的JSON发布到http://json2csharp.com/中。采取结果类并合并重复项,您将得到:
        public class AddressComponent    {        public string long_name { get; set; }        public string short_name { get; set; }        public List<string> types { get; set; }    }    public class Bounds    {        public Location northeast { get; set; }        public Location southwest { get; set; }    }    public class Location    {        public double lat { get; set; }        public double lng { get; set; }    }    public class Geometry    {        public Bounds bounds { get; set; }        public Location location { get; set; }        public string location_type { get; set; }        public Bounds viewport { get; set; }    }    public class Result    {        public List<AddressComponent> address_components { get; set; }        public string formatted_address { get; set; }        public Geometry geometry { get; set; }        public bool partial_match { get; set; }        public List<string> types { get; set; }    }    public class RootObject    {        public List<Result> results { get; set; }        public string status { get; set; }    }

(您还可以使用JSON作为类粘贴或https://jsonutils.com/来生成初始类型定义。)

  1. 使用Json.NET反序列化JSON,如下所示:

        var root = JsonConvert.DeserializeObject<RootObject>(result);
  2. 您的查询返回了多个结果,因此您需要像这样循环遍历返回的位置:

        foreach (var singleResult in root.results){    var location = singleResult.geometry.location;    var latitude = location.lat;    var longitude = location.lng;    // Do whatever you want with them.}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5615348.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存