c# - 从具有纬度和经度的反向地理编码中获取城市名称

标签 c# asp.net google-maps xml-parsing reverse-geocoding

http://maps.googleapis.com/maps/api/geocode/xml?latlng=39.952853,32.901470&sensor=false

在这个 xml url 中,我无法从下面解释的区域获取数据。

<long_name>Altınevler Mahallesi</long_name>

我正在使用 asp.net c#。你能帮我解决这个问题吗?

这是我尝试从xml中获取数据的代码

XmlDocument xdoc = new XmlDocument();
xdoc.Load(
    "http://maps.googleapis.com/maps/api/geocode/xml?latlng=39.952853,32.901470&sensor=false"
    );

XmlNodeList xNodelst = xdoc.DocumentElement.SelectNodes("entry");

foreach (XmlNode xNode in xNodelst)
{
    label1.Text += "read";
}

最佳答案

如果有人想知道我的猜测,我已经解决了我的问题。解决方案如下所示。

谢谢

XmlDocument xDoc = new XmlDocument();
        xDoc.Load("https://maps.googleapis.com/maps/api/geocode/xml?latlng=" +coordinate+"&location_type=ROOFTOP&result_type=street_address&key=YOURAPIKEY");

        XmlNodeList xNodelst = xDoc.GetElementsByTagName("result");
        XmlNode xNode = xNodelst.Item(0);
        string adress = xNode.SelectSingleNode("formatted_address").InnerText;
        string mahalle = xNode.SelectSingleNode("address_component[3]/long_name").InnerText;
        string ilce = xNode.SelectSingleNode("address_component[4]/long_name").InnerText;
        string il = xNode.SelectSingleNode("address_component[5]/long_name").InnerText;

因此您可以为谷歌地图提取任何数据。

关于c# - 从具有纬度和经度的反向地理编码中获取城市名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33613828/

相关文章:

c# - 将 System.Windows.Media.Color 绑定(bind)到 TextBlock.Foreground?

c# - 在 ASP .NET Core 模型的构造函数中使用 AutoMapper

asp.net - 使用长轮询时使用/signalr/ping 调用

c# - 有没有办法预览服务器上存储的文档?

android - 如何使用 Google map Intent 选择位置

javascript - MarkerWIthLabel map 库 : this. setValue 不是函数

c# - 是否可以将同一程序集的不同版本引用到单个项目中?

c# - 如何引用实现某个接口(interface)的类?

html - Bootstrap 3 中的谷歌地图全高

c# - C# 属性实际上是方法吗?