我想知道下面的可行性。当然,我不是要求完整的代码(尽管它会很好!)而是一种在ASP.NET中实现以下功能的方法:
我有一个网站。人们在其上注册并提供他们的居住国家以及邮政编码和城市名称,然后将其存储在SQL Server数据库中。我的网站上有一个搜索引擎,我希望其中一个过滤选项是“只向我显示最长距离为100公里的成员”。
任何想法,提示,已编写的代码我都可以重复使用,免费API就是这样做等等......?
感谢您的时间!
答案 0 :(得分:3)
首先,您需要一种从邮政编码中查找地理编码(纬度和经度)的方法。有几个Web服务,还有可以下载包含此数据的CSV文件。例如,谷歌提供geolocaiton servivces。我相信他们的API也会告诉你两点之间的距离。
无论如何,一旦你知道地理编码,使用数学确定距离就很简单了。示例代码here:
(实际上,我的第一次Google搜索提出了complete solution。)