【问题标题】:Formatting City/State Information格式化城市/州信息
【发布时间】:2011-01-18 22:37:11
【问题描述】:

我有一个存储用户家乡、州和国家/地区的应用程序。我不需要特别做验证;应用程序的其他部分不依赖于数据,但我希望格式保持一致,以免以后在数据库中出现“北卡罗来纳”、“NC”、“北卡罗来纳”等。

有谁知道传递 Bing 地图的方法(我更喜欢 Bing 而不是 Google,因为到目前为止我一直在这个项目中使用它)一个搜索字符串并返回一个对象,该对象的地址由服务解释? (即传入“charlotte, nc”并返回“Charlotte, North Carolina, United States”)

我查看了VEPlace(在MSDN 上),但我不确定如何确保从Name 属性中恢复我希望的格式。有人知道如何最好地解决这个问题吗?

此外,该项目的后端是 ASP.NET MVC,所以如果有一种方法可以在 C# 中使用涉及控制器或类似的东西,那完全没问题。

【问题讨论】:

    标签: asp.net geocoding bing-maps


    【解决方案1】:

    我想我可能已经找到了解决方案:GeocodeServiceRequest.ReverseGeocodeRequest 方法(在MSDN 上)返回一个GeocodeResponse 类,它有一个Address 成员。这又具有以我想要的方式形成地址所需的所有属性。所以会有一个控制器,它有一个地址的字符串形式的动作,它将返回正确格式的版本。

    我将尝试这个并在几个小时内更新代码。它不是完全的客户端,不是最理想的,但看起来它会很好地工作。

    【讨论】:

      【解决方案2】:

      我怀疑您需要执行以下操作:

      1. 查询 Bing / Google 地图以获取城市的纬度 / 经度。
      2. 使用反向地理编码查找 lat/lng 以获得一致的命名约定。 (看起来你已经找到了。这里有一个使用这个的链接:http://blog.bobcravens.com/2011/01/a-windows-phone-7-trip-recorder/

      如果您像这样分解它,您可能希望使用从浏览器的地理定位 api 获得的 lat/lng 来为您的 #1 播种。

      鲍勃

      【讨论】:

      • 顺便说一句...这里是使用地理定位 api 的链接:blog.bobcravens.com/2010/10/…
      • 我不希望通过地理位置获得他们的位置,因为在他们的家乡上大学的人数非常少。我想我已经解决了:感谢您的帮助!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-25
      • 1970-01-01
      • 2017-10-20
      • 2011-01-14
      • 2017-10-27
      • 1970-01-01
      相关资源
      最近更新 更多