Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 纬度及;经度问题_Asp.net Mvc_Sql Server 2008_Google Maps Api 3 - Fatal编程技术网

Asp.net mvc 纬度及;经度问题

Asp.net mvc 纬度及;经度问题,asp.net-mvc,sql-server-2008,google-maps-api-3,Asp.net Mvc,Sql Server 2008,Google Maps Api 3,我想要给定Zipcode和半径的Zipcode列表 例如-如果我为例如'111111'输入Zipcode并设置里程'50',它可能会返回半径之间的Pin码列表 如果无法获取Zipcode列表,请尝试获取给定半径的所有纬度和经度。基于您对问题的惊人描述,您似乎遇到了地理空间问题 A) 您将需要一个地理空间数据存储,其中邮政编码作为点或多边形。 b) 现在您正在进行前缀搜索,这是一个带有地理距离过滤器的简单sql查询 您可以使用elasticsearch或Postgis甚至spatiallite之类

我想要给定Zipcode和半径的Zipcode列表

例如-如果我为例如
'111111'
输入Zipcode并设置里程
'50'
,它可能会返回半径之间的Pin码列表


如果无法获取Zipcode列表,请尝试获取给定半径的所有纬度和经度。

基于您对问题的惊人描述,您似乎遇到了地理空间问题

A) 您将需要一个地理空间数据存储,其中邮政编码作为点或多边形。 b) 现在您正在进行前缀搜索,这是一个带有地理距离过滤器的简单sql查询

您可以使用elasticsearch或Postgis甚至spatiallite之类的工具轻松实现这一点


还有其他的方法,但是地理距离是最简单的方法,看看这个例子,它使用了

是的,我发现了一个Web服务,它完全满足了我的需要。您可以只提供一个简单的ZipCode和一个国家或完整的地址,然后在响应中获得经度/纬度。然后,我发送返回的纬度和经度,以获取所提供坐标附近的所有ZipCodes的列表,以及也可以自定义的给定半径。您可以过滤希望服务返回的总行数,甚至可以使用英里或公里作为度量单位

因此,基本上通过返回的信息,我将获得的每个最近Zipcode的坐标输入到google API,并将这些感兴趣的点渲染到需要显示的地图中

服务由GeoNames提供。它是一个致力于地理定位服务的组织。他们也提供高级数据,但特别是这些服务是免费的,显然信息不如高级数据准确,但实际上在我的测试中,我发现这是可信的,响应也非常快。另一个很好的优点是,获取使用Geonames服务的密钥的过程非常简单

我给你留下了我所说的服务的链接

可用服务列表:


希望它能帮助很多人。问候

你是希望sql server只理解邮政编码,还是你有一个zipcodes及其相关lat/long的数据库?是的,先生,我想做完全一样的事情,但google API毫无疑问是基于一个zipcodes的大型数据库,以及它们的lat/long。你有数据吗?没有,先生,我没有。