数日前に正常に機能していたcsomeコードに少し問題があります。Yahoos APIを使用して、郵便番号の緯度と緯度を取得しています。コードは次のとおりです。
string url = string.Format("http://where.yahooapis.com/geocode?flags=J&appid=xxxx&location={0}", postcode);
decimal latitude = 0;
decimal longitude = 0;
Dictionary<string, decimal> geoCode = new Dictionary<string, decimal>();
dynamic yahooResults = new Uri(url).GetDynamicJsonObject();
foreach (var result in yahooResults.ResultSet.Results)
{
latitude = (decimal)result.latitude;
longitude = (decimal)result.longitude;
}
geoCode.Add("latitude", latitude);
geoCode.Add("longitude", longitude);
return geoCode;
コードは数日前に正常に機能していたと言いましたが、現在は緯度と緯度が常に0として返されます。以下にYahooからの応答を含めました。
{
"@lang": "en-US",
"ResultSet": {
"@version": "2.0",
"@lang": "en-US",
"Error": "0",
"ErrorMessage": "No error",
"Locale": "en-US",
"Found": "1",
"Quality": "60",
"Result": {
"quality": "60",
"latitude": "51.62071",
"longitude": "-0.23616",
"offsetlat": "51.620708",
"offsetlon": "-0.23616",
"radius": "4200",
"name": "",
"line1": "",
"line2": "London",
"line3": "NW7",
"line4": "United Kingdom",
"house": "",
"street": "",
"xstreet": "",
"unittype": "",
"unit": "",
"postal": "NW7",
"neighborhood": "",
"city": "London",
"county": "Greater London",
"state": "England",
"country": "United Kingdom",
"countrycode": "GB",
"statecode": "ENG",
"countycode": "LND",
"uzip": "NW7",
"hash": "",
"woeid": "26787971",
"woetype": "11"
}
}
}
フォーマットして申し訳ありませんが、スタックはそれをうまくフォーマットしたくないようです!明らかにlogitiudeと緯度が返されます。これは単純なことだと思いますが、愛やお金で見ることはできません。助けていただければ幸いです。