Bing Maps进阶系列二:使用GeocodeService进行地理位置检索
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="BasicHttpBinding_IGeocodeService" maxBufferSize="2147483647"
maxReceivedMessageSize="2147483647">
<security mode="None">
<transport>
<extendedProtectionPolicy policyEnforcement="Never" />
</transport>
</security>
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint address="http://dev.virtualearth.net/webservices/v1/geocodeservice/GeocodeService.svc"
binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IGeocodeService"
contract="GeocodeService.IGeocodeService" name="BasicHttpBinding_IGeocodeService" />
</client>
</system.serviceModel>
</configuration>
<m:Map CredentialsProvider="AkzZURoD0H2Sle6Nq_DE7pm7F3xOc8S3CjDTGNWkz1EFlJJkcwDKT1KcNcmYVINU" x:Name="map"></m:Map>
<StackPanel VerticalAlignment="Top" HorizontalAlignment="Right" Background="Gray" Opacity="0.78" Orientation="Vertical" Margin="2,23,2,2">
<StackPanel Orientation="Horizontal">
<TextBlock Text="地名:" Margin="0,5,0,5"></TextBlock>
<TextBox x:Name="tbName" Width="233"></TextBox>
<Button x:Name="btnQuery" Content="搜索" Click="btnQuery_Click" Width="80" Height="30"></Button>
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock Text="经度:"></TextBlock>
<TextBox x:Name="tbLongitude" Width="110"></TextBox>
<TextBlock Text="纬度:"></TextBlock>
<TextBox x:Name="tbLatitude" Width="110"></TextBox>
<Button x:Name="btnQueryReverse" Content="反向搜索" Click="btnQueryReverse_Click" Width="60" Height="30"></Button>
</StackPanel>
</StackPanel>
</Grid>
{
//实例化GeocodeService客户端对象
GeocodeServiceClient client = new GeocodeServiceClient();
client.GeocodeCompleted += new EventHandler<GeocodeCompletedEventArgs>(OnGeocodeCompleted);
//创建一个Geocode检索请求
GeocodeRequest request = new GeocodeRequest();
request.Credentials = new Credentials();
request.Credentials.ApplicationId = "AkzZURoD0H2Sle6Nq_DE7pm7F3xOc8S3CjDTGNWkz1EFlJJkcwDKT1KcNcmYVINU";
//设置检索条件
request.Query = this.tbName.Text.Trim();
//异步调用Geocode服务方法
client.GeocodeAsync(request);
}
{
if (e.Error == null)
{
GeocodeResponse response = e.Result;
double latitude = response.Results[0].Locations[0].Latitude;
double longitude = response.Results[0].Locations[0].Longitude;
//显示检索地点的地理位置坐标经度和纬度
this.tbLatitude.Text = latitude.ToString();
this.tbLongitude.Text = longitude.ToString();
//将地图定位到该地理位置并设置地图缩放级别到4级
map.SetView(new Location(latitude, longitude), 4);
}
}
{
GeocodeServiceClient client = new GeocodeServiceClient();
client.ReverseGeocodeCompleted+=new EventHandler<ReverseGeocodeCompletedEventArgs>(OnReverseGeocodeCompleted);
ReverseGeocodeRequest request = new ReverseGeocodeRequest();
request.Credentials = new Credentials();
request.Credentials.ApplicationId = "AkzZURoD0H2Sle6Nq_DE7pm7F3xOc8S3CjDTGNWkz1EFlJJkcwDKT1KcNcmYVINU";
request.Location = new Location(36.5540000796318,104.055999666452);
client.ReverseGeocodeAsync(request);
}
private void OnReverseGeocodeCompleted(object sender, ReverseGeocodeCompletedEventArgs e)
{
if (e.Error == null)
{
if (e.Result.Results.Count > 0)
{
GeocodeResponse response = e.Result;
this.tbName.Text = response.Results[0].DisplayName;
}
else
MessageBox.Show("没有检索到该地理位置所对应的地点");
}
}
转载于:https://blog.51cto.com/beniao/283335
Bing Maps进阶系列二:使用GeocodeService进行地理位置检索相关推荐
- Bing Maps进阶系列八:在Bing Maps中集成OpenStreetMap地图
OSM(OpenStreetMap-开放街道地图)服务就是一种发布自己地图数据图片为服务的一种实现类型,开放街道地图成立动机在于希望能创造并且提供可以被自由地使用的地理资料(像街道地图)给每个想使用的 ...
- 使用GeocodeService进行地理位置检索
转载自 http://beniao.cnblogs.com/作 者:Beniao WebGIS开发群:75662563 Bing Maps进阶系列二:使用GeocodeSer ...
- 【Silverlight】Bing Maps学习系列(七):使用Bing Maps的图片系统(Tile System)
[Silverlight]Bing Maps学习系列(七):使用Bing Maps的图片系统(Tile System) 目前包括微软必应地图在内的几乎所有在线电子地图(如:Google Maps等)都 ...
- Wireshark入门与进阶系列(二)
摘自http://blog.csdn.net/howeverpf/article/details/40743705 Wireshark入门与进阶系列(二) "君子生非异也,善假于物也&quo ...
- 【Silverlight】Bing Maps学习系列(二):通过Bing Maps Silverlight Control如何显示地图...
如本系列第一篇你所介绍的,开发基于Silverlight的Bing Maps除了开发环境还需要一个开发Key,这个Key是用来做什么的呢?Silverlight控件在做地图呈现的时候它是一个必不可少的 ...
- 【Silverlight】Bing Maps学习系列(三):如何控制地图
本篇主要介绍如何对地图的一些常用控制操作,包括地图加载模式.根据精度和纬度定位.变焦程度等. 一.动态设置地图加载模式 在本系列二中介绍了地图加载模式,可以给地图控件设置一种模式的地图加载模式,呈现数 ...
- matlab 积分进阶教程,最适合小白的matlab教程系列_进阶系列二之微积分
微积分篇 更多文章参考 符号变量 极限问题 求导数 求导数----偏导数 积分--符号解 积分数值解 多重积分 级数求和 泰勒级数展开 常微分方程 更多文章参考 最适合小白的matlab教程系列_基础 ...
- 最适合小白的matlab教程系列_进阶系列二之微积分
微积分篇 更多文章参考 符号变量 极限问题 求导数 求导数----偏导数 积分--符号解 积分数值解 多重积分 级数求和 泰勒级数展开 常微分方程 更多文章参考 最适合小白的matlab教程系列_基础 ...
- 【Silverlight】Bing Maps学习系列(九):自定义功能导航条(Custom NavigationBar)
微软Bing Maps Silverlight Control实现了最基本的地图呈现功能,其功能其他是非常的强大,可以支持很多的扩展功能开发,本文通过自定义功能导航菜单为例介绍基于Bing Maps ...
- 最适合小白的matlab教程系列_进阶系列二之多项式
多项式 一维插值 二维插值 计算多项式 *计算多项式* 计算多项式乘除法 多项式求导 多项式求积分 多项式曲线拟合 一维插值 命名格式vq=interp1(x,v,xq) x:原始数据(自变量)n维向 ...
最新文章
- CentOS 安装FTP
- 《数据竞赛白皮书·下篇》发布,开源办好一场数据竞赛的实践方法论
- java判断直到_3. JavaSE-位运算及判断循环程序结构的讲解
- 优秀的中文分词第三方库——jieba
- Angular里interpolation text节点的创建逻辑,单步调试
- PHP2002,php - 错误:SQLSTATE [HY000] [2002]没有这样的文件或目录 - SO中文参考 - www.soinside.com...
- 史上最简单的 SpringCloud 教程 | 第一篇: 服务的注册与发现(Eureka)(转)
- 于明:移动支付将代替电子支付?
- mysql 杂记(二)
- epoll原理_彻底搞懂epoll高效运行的原理
- 【unity记录】导入标准资源包(Standard Assets)
- 最新Spring Boot实战项目(权限后台管理系统)详解
- Lync 2010升级到2013之部署企业语音!
- ZOOM一直显示登录失败,出现Zoom登录失败:100000503,zoom登录失败错误代码1044
- 那些堪称神器的PPT制作小工具
- FinalData 数据恢复
- 【数学相关、逻辑推理】
- 佳能R5/R6断电H.265/HEVC编码DAT视频损坏怎么修复
- pet缩聚流程图_PET生产工艺流程.ppt
- 【mysql】日期和时间函数
热门文章
- python用for循环求平均分_Python中for循环的一些非常规操作
- Linux RTC驱动模型分析之rtc-proc.c
- OpenGL ES 3.0学习实践
- 请求发送者与接收者解耦——命令模式(四)
- android arm linux下使用内存转储crash工具分析 kernel system dump问题
- 51Nod - 1051(思维)
- mysql自助完成翻页代码_MySql实现翻页查询功能
- 文件复制 详解(C++)
- 跳台阶问题详解---动态规划
- 安恒赛php_安恒四月赛部分Writeup