0

我正在编写 ac# silverlight 应用程序,它在地图上显示点。

基本上需要发生的是: 1. 我有一个位置数据集。例如,我需要从我的数据集(我的当前位置)中找到最近的十个位置,和/或搜索像“伦敦”这样的位置,并在我可以读取的 XML 文件中给我最近的位置。2. 然后我需要使用我有权访问的 API,请求有关这十个位置的信息并通过休息接口返回数据。

第2点很好。但是关于第 1 点的最佳方法是什么。人们是否将那里的数据集上传到像 bing 或 google 这样的映射 API,如果您向他们提供当前位置或搜索指定地点,让他们返回所需的结果?

非常感谢您的任何指导

4

1 回答 1

0

你在建立自己的数据库吗?如果是这样,您可以查看带有PostGIS扩展的 PostgreSQL 之类的东西,或者,如果您有此许可证,则可以查看 Microsoft SQL Server 2008 Spatial。这两个数据库都可以处理空间查询。您可以编写一个基本上使用当前位置作为输入的 SQL 查询,然后选择最接近该位置的 10 个点/要素。

您还可以尝试将您的数据上传到MapQuest 的数据管理器(他们的开发人员服务的一部分),以使用他们的搜索 API在数据管理器中搜索您的数据表并根据需要返回功能。您可以将 XML 指定为结果的格式。我认为使用他们的 Search API 的一个好处是它可以进行各种搜索,比如半径、矩形,甚至可以沿着路线搜索。因此,例如,如果您在两个位置之间绘制了一条路线,它可以找到该路线距离内的所有内容。空间数据库也可以做到这一点,但可能更难设置,具体取决于您的经验水平。

这仅取决于您自己想要做多少以及您拥有多少数据集。希望这有助于为您指明正确的方向!

于 2012-01-10T16:47:03.990 回答