这一节我们来讲新建立的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. Python数据分析--Pandas知识点(一)

    本文主要是总结学习pandas过程中用到的函数和方法, 在此记录, 防止遗忘 1. 重复值的处理 利用drop_duplicates()函数删除数据表中重复多余的记录, 比如删除重复多余的ID. im ...

  2. BTC和BCH 区别和联系?

    在比特币刚刚出现的时期,中本聪对区块的大小限制在1M.这种限制既保障性能较弱的个人电脑能够参与其中,同时也起到了防止攻击者让比特币网络超载的风险发生,毕竟那时系统还很脆弱.在1M的限制下,10分钟一个 ...

  3. js全局作用域

    全局作用域 不在任何函数内定义的变量就具有全局作用域.实际上,JavaScript默认有一个全局对象window,全局作用域的变量实际上被绑定到window的一个属性: var course = 'L ...

  4. session是什么

    初识session,跟大家一起学习下 session是什么 首先,我们需要知道session是什么.我们普遍将session称之为会话控制.说实在的,我现在也不清楚session到底算是什么.我个人认 ...

  5. PAT 1067 试密码(20)(代码)

    1067 试密码(20 分) 当你试图登录某个系统却忘了密码时,系统一般只会允许你尝试有限多次,当超出允许次数时,账号就会被锁死.本题就请你实现这个小功能. 输入格式: 输入在第一行给出一个密码(长度 ...

  6. 搭建自己的代理服务 proxy nginx squid ss5 s(shadow)s(socks)

    标签: nginx / squid / 负载均衡 / ss 4090 1. nginx (forward) nginx自己熟悉,经常用来做负载均衡的反向代理, 这里搭建一个正向代理(forward) ...

  7. UI设计教程学习分享:APP布局

    一.宫格布局 这种APP信息布局方式也是我们目前最常见的一种方式,也是符合用户习惯和黄金比例的设计方式,最知名的就是锤子手机的界面设计.锤子手机界面设计欣赏知名的APP设计采用的九宫格.六宫格等方式布 ...

  8. swift 要点

    swift 基本语法注意点 通常来说,编程语言教程中的第一个程序应该在屏幕上打印“Hello, world”.在 Swift 中,可以用一行代码实现 print("Hello, world! ...

  9. Spring ApplicationContext(十)finishRefresh

    ApplicationContext(十)finishRefresh Spring 系列目录(https://www.cnblogs.com/binarylei/p/10198698.html) 经过 ...

  10. 【UI测试】--美观与协调性