在bing map ajax控件中使用Address类进行地理编码

时间:2014-04-28 08:51:55

标签: bing-api bing-maps

我在web应用程序中使用bing maps ajax控件和bing maps enterpise key。其中一个模块包含一个功能,用于对用户请求的地址列表进行地理编码。我使用以下代码片段进行地理编码。

for (var i = 0, j = addresses.length; i < j; i++) {
     searchManager.geocode({
     where : addresses[i],/*<address>,<city>,<state>,<country>,<zip>*/
     count : 5,
     callback : success,
     errorCallback : failure
 });
 };

成功率非常低。即使多次尝试(大约150个地址到地理编码),也要接近10%。  所以,我想知道是否有任何方法可以使用Address类(http://msdn.microsoft.com/en-us/library/hh868069.aspx)进行地理编码,而不是将地址作为字符串提供。官方文档仅提及将地址作为字符串提供( http://msdn.microsoft.com/en-us/library/hh868060.aspx)。我想用地址类而不是字符串检查的原因是,因为bing在Silverlight应用程序中映射SOAP api,我发现使用Address类时成功率更高。

提前感谢您在此问题上的任何帮助。

1 个答案:

答案 0 :(得分:0)

首先,如果您在某处拥有地址数据,则应提前对其进行地理编码。使用您的地图在JavaScript中对您的所有地址进行地理编码很慢,并且它还会使用大量事务,因此您可以快速耗尽免费使用。您是否有理由在JavaScript应用中循环地址而不是对时间进行地理编码?

通常最好将地址作为单个字符串传递,并允许地理编码器对其进行解析。这实际上是一个在地理编码时用于REST服务的技巧。