我正在尝试使用Bing Geocoding网络服务将地址转换为位置,以便在我的WinForm应用程序中添加Bing WPF控件。
我的问题是通过地理编码和其他一些地址找不到某些地址!
如果我直接在tha bing maps网站上搜索这个地址,就可以找到它。
以下是我的示例:
public static GeocodeResponse GetGeocodeResponse(string appId, string address)
{
GeocodeRequest geocodeRequest = new GeocodeRequest
{
Credentials = new Credentials {ApplicationId = appId},
Query = address
};
ConfidenceFilter[] filters = new ConfidenceFilter[1];
filters[0] = new ConfidenceFilter { MinimumConfidence = Confidence.High };
GeocodeOptions geocodeOptions = new GeocodeOptions { Filters = filters };
geocodeRequest.Options = geocodeOptions;
GeocodeServiceClient geocodeServiceClient = new GeocodeServiceClient("BasicHttpBinding_IGeocodeService");
return geocodeServiceClient.Geocode(geocodeRequest);
}
任何人都有相同的提示才能解决这个问题?
非常感谢:)
答案 0 :(得分:0)
有几种可能导致这种情况的事情。首先,您使用的是基本帐户或试用帐户,并且您的请求受到费率限制。当服务器承受大量负载或以超出免费使用条款的频率发出大量请求时,就会发生这种情况。这样做是为了确保企业帐户不受基本或试用用户使用的影响。当发生速率限制时,会在响应的标头中添加一个标志,以指示:
您使用的旧版Bing Maps SOAP服务已在4年多时间内未更新。通常不建议对这些服务进行任何新的开发,因为它们比Bing Maps REST服务慢得多,功能较少并且通常返回不太准确的结果。我建议转到Bing Maps REST服务。您可以在此处找到有关如何在.NET中使用它们的文档:
http://msdn.microsoft.com/en-us/library/ff701713.aspx http://msdn.microsoft.com/en-us/library/jj819168.aspx
另外,请看一下这篇博文: http://rbrundritt.wordpress.com/2013/02/14/bing-maps-rest-service-tips-amp-tricks-2/
我还将在第5章的免费电子书中介绍如何深入使用REST服务: http://rbrundritt.wordpress.com/my-book/