使用 JSON.NET 和 NuGet Googlemapsapi 库进行地理编码



我正在使用NuGet提供的Google Maps .NET API,并且卡在查询进入的地理编码部分。

在下面的代码中,我尝试将地址传递给 API 并返回具有匹配纬度和经度的Location

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;
}

意识到这是非常具体的,如果有人能启发我,我很乐意为更一般的应用程序扩展这个问题

GeocodingResponse.Results是一个IEnumerable<Result>。 因此,您只需要执行.First()即可从中获得第一个Result

 var geoResult = geoResponse.Results.First();

请注意,如果没有第一个结果,这将引发异常。 您需要在代码中处理这种情况。

相关内容

  • 没有找到相关文章

最新更新