如何使用ASP.NET计算两个位置之间的距离?
我想知道下面这个的可行性。当然,我不是要完整的代码(尽管这会很好!),而是要一种在ASP.NET中实现以下功能的方法: 我有一个网站。人们在上面注册,并提供他们的居住国以及邮政编码和城市名称,然后将其存储在SQL Server数据库中。我有一个搜索引擎在我的网站上,我想其中一个过滤选项是“只显示我的成员生活在最大距离为100公里” 任何想法、提示、我可以重复使用的已编写代码、免费API正在这样做,等等如何使用ASP.NET计算两个位置之间的距离?,.net,geocoding,distance,.net,Geocoding,Distance,我想知道下面这个的可行性。当然,我不是要完整的代码(尽管这会很好!),而是要一种在ASP.NET中实现以下功能的方法: 我有一个网站。人们在上面注册,并提供他们的居住国以及邮政编码和城市名称,然后将其存储在SQL Server数据库中。我有一个搜索引擎在我的网站上,我想其中一个过滤选项是“只显示我的成员生活在最大距离为100公里” 任何想法、提示、我可以重复使用的已编写代码、免费API正在这样做,等等 谢谢你抽出时间 首先,您需要一种从邮政编码中查找地理编码(纬度和经度)的方法。有几个web服务
谢谢你抽出时间 首先,您需要一种从邮政编码中查找地理编码(纬度和经度)的方法。有几个web服务用于此,还可以下载包含此数据的CSV文件。例如,谷歌提供地理定位服务。我相信他们的API也会告诉你两点之间的距离 无论如何,一旦你知道了地理编码,就只需要用数学来确定距离了。示例代码:
(事实上,我第一次在谷歌搜索时发现了一个。)首先,你需要一种从邮政编码中查找地理编码(纬度和经度)的方法。有几个web服务用于此,还可以下载包含此数据的CSV文件。例如,谷歌提供地理定位服务。我相信他们的API也会告诉你两点之间的距离 无论如何,一旦你知道了地理编码,就只需要用数学来确定距离了。示例代码:
(事实上,我第一次在谷歌上搜索时发现了一个问题。)-1这个问题显示出很少的努力。只要快速搜索一下SO,就找到了至少12个非常接近的副本。编辑:也许我只是一个脾气暴躁的老人,但在我看来,人们不应该阅读这些(毕竟,你自己说过“实际上,我的第一次谷歌搜索…”)谢谢你的-1。我实际上搜索了这么多,我可以找到许多与两个位置之间的计算相关的帖子,但没有看到一篇能够告诉我如何在不测试所有可用位置的情况下,以有效的方式检查一个位置和超过20k个位置之间的距离。如果你查看下面与Straton先生的讨论,你会理解的。但是是的,正如我所说的,谢谢。基于你的标题和使用API的可能性,我认为你关注的是实际的计算,而不是如何在一个大的集合上高效地进行计算。在这种情况下,我的许多原始评论都被取消了,也许你的帖子不值得得-1分。另一方面,你可能会发现这很有帮助,这实际上很有用。英语不是我的母语,一开始我并没有发现它。-1个问题显示出很少的努力。只要快速搜索一下SO,就找到了至少12个非常接近的副本。编辑:也许我只是一个脾气暴躁的老人,但在我看来,人们不应该阅读这些(毕竟,你自己说过“实际上,我的第一次谷歌搜索…”)谢谢你的-1。我实际上搜索了这么多,我可以找到许多与两个位置之间的计算相关的帖子,但没有看到一篇能够告诉我如何在不测试所有可用位置的情况下,以有效的方式检查一个位置和超过20k个位置之间的距离。如果你查看下面与Straton先生的讨论,你会理解的。但是是的,正如我所说的,谢谢。基于你的标题和使用API的可能性,我认为你关注的是实际的计算,而不是如何在一个大的集合上高效地进行计算。在这种情况下,我的许多原始评论都被取消了,也许你的帖子不值得得-1分。另一方面,你可能会发现这很有帮助,这实际上很有用。英语不是我的母语,一开始我没有发现。谢谢你的快速回答。当我们能够访问一个包含邮政编码及其地理位置信息的详尽列表的文件时,这一点非常有用。我该如何为全世界的用户提供这种服务呢?谷歌为全世界的用户提供了地理编码,如果你不想使用谷歌,谷歌搜索应该会提供更多的服务。是的,我刚刚找到了这个。另一方面,我找到了大量的例子来计算两个邮政编码之间的距离,我想我理解了这个公式(至少,它的使用方法)。现在,我该如何找到与给定位置接近的所有位置?“for…next”循环检查每个zip上的距离对大约20k个位置的大约50k个注册成员有效吗?我们使用SQL Server和用户定义函数。我们的所有位置都在一个具有lat/long的数据库中,并且在选择给定地理代码附近的商店时使用这些功能:感谢您的快速回答。当我们能够访问一个包含邮政编码及其地理位置信息的详尽列表的文件时,这一点非常有用。我该如何为全世界的用户提供这种服务呢?谷歌为全世界的用户提供了地理编码,如果你不想使用谷歌,谷歌搜索应该会提供更多的服务。是的,我刚刚找到了这个。另一方面,我找到了大量的例子来计算两个邮政编码之间的距离,我想我理解了这个公式(至少,它的使用方法)。现在,我该如何找到与给定位置接近的所有位置?“for…next”循环检查每个zip上的距离对大约20k个位置的大约50k个注册成员有效吗?我们使用SQL Server和用户定义函数。我们的所有位置都位于一个具有lat/long的数据库中,并在选择给定地理代码附近的商店时使用这些功能: