0

如何使用 YQL 查询使用纬度和经度位置来获取国家/地区名称?或者更好地指出我可以找出表格的列?

4

2 回答 2

0

上面的查询确实有效,但让我带您完成所有步骤。

构建对 yahoo 的 url 查询并创建请求。

string url = string.Format("http://query.yahooapis.com/v1/public/yql?q={0}", HttpUtility.UrlEncode("SELECT * FROM geo.placefinder WHERE text=\"-27,28\" and gflags=\"r\""));
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "GET";

获取响应数据:

using (WebResponse response = request.GetResponse())
{
    XmlDocument doc = new XmlDocument();
    doc.Load(response.GetResponseStream());

    geo.CountryName = doc.SelectSingleNode("./query/results/Result/country").InnerText;
    geo.AlphaCode = doc.SelectSingleNode("./query/results/Result/countrycode").InnerText;
    geo.City = doc.SelectSingleNode("./query/results/Result/city").InnerText;
    geo.State = doc.SelectSingleNode("./query/results/Result/state").InnerText;        

}
于 2012-08-24T10:24:30.347 回答
-1

我正在寻找的答案是:

SELECT * FROM geo.placefinder WHERE text=\"{0}\" and gflags=\"r

文本是纬度和经度,例如 -27,28

这将返回一个包含国家信息的 xml。

于 2012-08-22T07:11:36.450 回答