2

NuGet から入手できる Google Maps .NET API をいじっていますが、クエリが入るジオコーディングの部分で行き詰まりました。

Location次のコードでは、住所を API に渡し、緯度と経度が一致するを返そうとしています。

public Location GeoCode(string address)
{
    GoogleMapsApi.Entities.Geocoding.Request.GeocodingRequest geoRequest = new GeocodingRequest();

    geoRequest.Address = address;

    GoogleMapsApi.Entities.Geocoding.Response.GeocodingResponse geoResponse = GoogleMapsApi.GoogleMaps.Geocode.Query(geoRequest);

    GoogleMapsApi.Entities.Geocoding.Response.Result geoResult = geoResponse.Results.OfType<?> (?)

    return geoResult.Geometry.Location;
}

これは非常に具体的であることを認識しており、誰かが私を啓発してくれれば、より一般的なアプリケーションの質問を喜んで拡大します

4

1 に答える 1

1

GeocodingResponse.ResultsですIEnumerable<Result>.First()したがって、最初のものを取得するために行う必要があるだけですResult

 var geoResult = geoResponse.Results.First();

最初の結果がない場合、これは例外をスローすることに注意してください。コードでこのケースを処理する必要があります。

于 2013-10-08T15:35:47.887 に答える