这一节我们来讲新建立的ArcGIS API for Silverlight应用程序如何加载自己的地图服务的问题,网上的资料讲的都有点含糊不清,这次我们详细的讲一下配置的步骤:

首先介绍下我们的开发和部署环境:

部署环境:

  Windows 7 旗舰版32位操作系统

  IIS 6.0

开发环境:

  Visual Studio 2010

  Visual Studio 2010 SP1

  Siverlight 4

  Net Framework 4

第一步:搭建ArcGIS API for Silverlight开发环境。检验是否搭建成功的标志是建立一个自己的Silverlight应用程序,添加一个Map控件加载ArcGIS Online上的地图服务成功显示。此时显示的是ArcGIS Online上的地图资源,对于一个项目来说我们很多时候需要的是吧我们自己发布的地图服务放在我们的项目里,接下来看怎样连接到我们的本机地图服务;

第二步:将clientaccesspolicy.xml和crossdomain.xml两个跨域文件Copy到网站根目录下,具体是.NET下放在C:/inetpub/wwwroot或网站根目录下;

  文件下载地址:

  http://services.arcgisonline.com/clientaccesspolicy.xml

  http://services.arcgisonline.com/crossdomain.xml

第三步:在要发布的那个图层那里加一个InitializationFailed事件。

  添加方法:

 <esri:Map Name="MyMap">
<esri:Map.Layers>
<esri:LayerCollection>
<esri:ArcGISDynamicMapServiceLayer ID="ChinaMap" InitializationFailed="ArcGISDynamicMapServiceLayer_InitializationFailed" Url="http://services.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer">
</esri:ArcGISDynamicMapServiceLayer>
</esri:LayerCollection>
</esri:Map.Layers>
</esri:Map>

  右击MainPage.xaml 查看代码,C#后台代码如下:

 private void ArcGISDynamicMapServiceLayer_InitializationFailed(object sender, EventArgs e)
{
ESRI.ArcGIS.Client.Layer layer = sender as ESRI.ArcGIS.Client.Layer;
MessageBox.Show(layer.InitializationFailure.Message);
}

第四步:更改地图服务器地址Url 。

  将上面的Url地址换成自己的地图服务地址,如:

  Url="http://shaoyong-pc/ArcGIS/rest/services/ChinaMap/MapServer"

  在Visual Studio 2010调试程序即可。

本文来自Samson Shao的博客,原文地址:http://www.cnblogs.com/shaozhuyong/articles/2772385.html

ArcGIS API for Silverlight部署本地地图服务的更多相关文章

  1. ArcGIS API For Silverlight使用在线地图的多种方法总结

    引自:http://www.cnblogs.com/meimao5211/p/3283969.html ArcGIS API For Silverlight使用在线地图的多种方法总结 本人也正在学习A ...

  2. ArcGIS API for Silverlight 实现修改地图上的工程点位置

    原文:ArcGIS API for Silverlight 实现修改地图上的工程点位置 #region 处理工程点点击编辑相关事件 public Graphic editgraphics = null ...

  3. 解决ArcGIS API for Silverlight 加载地图的内外网访问问题

    原文:解决ArcGIS API for Silverlight 加载地图的内外网访问问题 先上一个类,如下: public class BaseClass { public static string ...

  4. 使用ArcGIS API for Silverlight + Visifire绘制地图统计图

    原文:使用ArcGIS API for Silverlight + Visifire绘制地图统计图 最近把很久之前做的统计图又拿出来重新做了一遍,感觉很多时候不复习,不记录就真的忘了,时间是最好的稀释 ...

  5. arcgis api for silverlight

    原文 http://blog.sina.com.cn/s/blog_4638cf7b0100wntt.html arcgis api for silverlight(1) (2011-09-21 09 ...

  6. ArcGIS API for Silverlight 调用GP服务准备---GP模型建立、发布、测试

    原文:ArcGIS API for Silverlight 调用GP服务准备---GP模型建立.发布.测试 第一篇.GP降雨量等值线建模.发布及测试 在水利.气象等行业中,要在WebGIS中实现空间分 ...

  7. arcgis api for silverlight使用google map等多个在线地图

    原文 http://blog.csdn.net/leesmn/article/details/6820245 无可否认,google map实在是很漂亮.可惜对于使用arcgis api for si ...

  8. ArcGIS API for Silverlight 使用GP服务实现要素裁剪功能

    原文:ArcGIS API for Silverlight 使用GP服务实现要素裁剪功能 昨天一QQ好友问了一个关于裁剪的问题,感觉自己也没有帮上什么忙,之后自己做了一个裁剪的例子,不过在做这个例子的 ...

  9. ArcGIS api fo silverlight学习一(silverlight加载GeoServer发布的WMS地图)

    最好的学习资料ArcGIS api fo silverlight官网:http://help.arcgis.com/en/webapi/silverlight/samples/start.htm 一. ...

随机推荐

  1. idea中快捷键设置为eclipse中快捷键

    打开file-settings,然后搜索key,在keymap中选择eclipse (1) (2)

  2. JFinal文件上传时直接使用getPara()去接受表单的数据接收到的数据一直是null?

    解决方案: 在文件上传页面form 标签中使用: enctype="multipart/form-data" 在controller类中先调用getFile系列方法才能使getPa ...

  3. python 数据类型 之 字符串 拼接 方法 以及效率问题

    在任何编程语言中,字符串的操作应该是最频繁的操作之一.在python中字符串的操作主要有以下几种方式.以及对效率的分析 字符串的拼接:字符串的拼接双方只能是字符串. 方法一: website = 'p ...

  4. Oracle_SQL(3) DML增删改

    sql语言按功能分为:数据定义语言DDL.数据操纵语言DML.数据查询语言DQL.数据控制语言DCL 一.数据操纵语言DML1.insert 新增 语法:insert into <表名> ...

  5. Centos查公网IP地址

    [root@syy ~]# curl icanhazip.com 115.29.208.111

  6. 论坛:获取当前原始请求中的远程IP地址

    topic.setIpAddr(ServletActionContext.getRequest().getRemoteAddr());//当前原始请求中的远程IP地址

  7. windows mysql主 Linux mysql 从 主从同步,读写分离

    Mysql –master linux-slave 一.My.ini: Server-id=1 relay-log=relay-bin relay-log-index=relay-bin-index ...

  8. 我的MVP呢?

    Ladies and gentelmen, welcome the MVP of NBA 16-2017 Season:... 呃,等下,好像哪里不对.那是因为,我要说的MVP根本就不是Most Va ...

  9. .net获取本地ip地址

    整理代码,.net获取本地ip地址,代码如下: string name = Dns.GetHostName(); IPHostEntry IpEntry = Dns.GetHostEntry(name ...

  10. python+selenium—webdriver入门(一)

    一.浏览器最大化 二.设置浏览器分辨率大小 三.打印页面title 四.打印URL 五.控制浏览器前进或后退 #!/usr/bin/env python#-*- coding:utf-8 -*- fr ...