- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在使用 Windows Phone 8 地理编码时遇到问题。使用Microsoft.Phone.Maps.Services.QuerycodeQuery ,如果我使用完整的加拿大邮政编码 (M5G 1Z4),我将得不到任何结果。如果我只使用前 3 个字符 (M5G),我会得到预期的结果。
我没有对数据执行任何特定操作,只是将其传递给 Microsoft 进行地理编码。这背后是否有特定原因或是否有其他查找位置的方法?
代码:
Geocode = new GeocodeQuery()
{
SearchTerm = LocationString,
GeoCoordinate = UserCoordinates ?? new GeoCoordinate(),
MaxResultCount = 1
};
Geocode.QueryCompleted += GetStringLocation_QueryCompleted;
Geocode.QueryCompleted += CleanupGeocode;
Geocode.QueryAsync();
最佳答案
虽然这没有解决 map 服务的地理编码功能中出现的限制,但它是一种对我有用的小解决方法...
当 GetStringLocation_QueryCompleted
函数返回 0 个结果时,我运行正则表达式来检查搜索是否是有效的邮政编码。如果是一个,那么我会获取前 3 个字符并重新运行地理编码。
使用这种方法要确保的一件事是,当调用辅助处理函数时(如果您在单独的函数中执行此操作),您会检查以确保地理编码未运行 (IsBusy)
正则表达式 (Utility.IsPostalCode):
Regex reg = new Regex("^[ABCEGHJ-NPRSTVXY]{1}[0-9]{1}[ABCEGHJ-NPRSTV-Z]{1}[ ]?[0-9]{1}[ABCEGHJ-NPRSTV-Z]{1}[0-9]{1}$",
RegexOptions.IgnoreCase | RegexOptions.Compiled);
return reg.IsMatch(Input);
在 GetStringLocation_QueryCompleted 中
if (e.Result.Count == 0 && Utility.IsPostalCode(((GeocodeQuery)e.UserState).SearchTerm))
{
if (Geocode != null && Geocode.IsBusy)
Geocode.CancelAsync();
GetStringLocation(((GeocodeQuery)e.UserState).SearchTerm.Substring(0, 3));
}
GetStringLocation
将是包含接受字符串的问题中的代码的函数。
关于c# - 将 GeocodeQuery 与加拿大邮政编码结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13709416/
我正在开发使用加拿大使用的 PostBar 条码符号对邮政地址进行编码的软件。 我找不到这些代码的相关信息。维基百科确实描述了 PostBars,但有一个警告说该文章是关于 D12 类型的,而加拿大邮
关闭。这个问题需要多问focused 。目前不接受答案。 想要改进此问题吗?更新问题,使其仅关注一个问题 editing this post . 已关闭 8 年前。 Improve this ques
我有一个客户要我计算城市之间的距离(以英里为单位)。我正在用 PHP、javascript 做项目,我一直在阅读一些 long/lat 数据库,但仍然无法找到从哪里开始以及如何使用它。有没有我可以通过
我想从地址字符串中提取阿尔伯塔(加拿大)地区的邮政编码。 例如: addr = '12345-67 Ave, Edmonton, AB T1A 2B3, Canada' 应该提取T1A 2B3。 匹
我希望使用 D3 绘制带有一些点的 map 。 Albers Projection US 效果很好。我还需要一张带有加拿大(按省)、墨西哥(按州)和波多黎各的 map 。非常感谢任何有关此 map 上
我正在使用 JLime在使用 ARM 处理器的 HP Jornada 720 上。我已经有了 cross-compiled gcc for x86 (arm-linux-gcc)。我想做的事情的想法很
我有一个 geojson 文件,指示蒙特利尔的一些兴趣点,但坐标不是纬度和经度,而是 MTM nad83,区域 8 中的 X、Y 坐标。 我想在谷歌地图中加载文件,但坐标需要转换.. 我在互联网上搜索
我在 Matplotlib 中使用 Basemap 绘制美国 map 。但是,我似乎无法删除墨西哥或加拿大以仅显示美国。我还需要绘制状态。目前,我的代码是: self.map = Basemap(ll
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 这个问题似乎与 help center 中定义的范围内的编程无关。 . 已关闭 2 年前。 Improve
我是一名优秀的程序员,十分优秀!