はい、私はこれに非常に慣れていないので、Bing が提示したすべてのドキュメントを本当に理解することはできません。しかし、経度と緯度の 2 倍の (数値) 値がある場合、C# で最も近い場所を、できれば文字列として取得するにはどうすればよいでしょうか? 古いチュートリアルから MSRMaps でこれを行う方法はある程度知っていましたが、ここでこれを行う方法がまったくわかりません。
どうもありがとうございました!
編集: ここでこのチュートリアルを見つけました: http://msdn.microsoft.com/en-us/library/dd221354.aspx
そして、私はリバース ジオコード ビットを使用することにしました。これが得られたものです。
static void Main(string[] args)
{
string location;
location = ReverseGeocodePoint("47.608, -122.337");
Console.WriteLine(location);
}
static string ReverseGeocodePoint(string locationString)
{
string results = "";
string key = "Aq4VS_9C4juJKsP7hRFqWlYj0Mpd_ybl2vOmj_J9rugPvptWiOEa3tCzmXWvzm9J";
ReverseGeocodeRequest reverseGeocodeRequest = new ReverseGeocodeRequest();
// Set the credentials using a valid Bing Maps key
reverseGeocodeRequest.Credentials = new GeocodeService.Credentials();
reverseGeocodeRequest.Credentials.ApplicationId = key;
// Set the point to use to find a matching address
GeocodeService.Location point = new GeocodeService.Location();
string[] digits = locationString.Split(',');
point.Latitude = double.Parse(digits[0].Trim());
point.Longitude = double.Parse(digits[1].Trim());
reverseGeocodeRequest.Location = point;
// Make the reverse geocode request
GeocodeServiceClient geocodeService = new GeocodeServiceClient();
GeocodeResponse geocodeResponse = geocodeService.ReverseGeocode(reverseGeocodeRequest);
if (geocodeResponse.Results.Length > 0)
results = geocodeResponse.Results[0].DisplayName;
else
results = "No Results found";
return results;
}
}
GeocodeServiceClient geocodeService = new GeocodeServiceClient(); でエラーが発生したのは私だけです。
発言: コントラクト 'GeocodeService.IGeocodeService' のエンドポイント構成セクションを読み込めませんでした。そのコントラクトの複数のエンドポイント構成が見つかったためです。優先エンドポイント構成セクションを名前で示してください。
これは私にとって何を意味するのでしょうか?