爱易网
IT新闻
IT新闻
爱易资讯
网站搭建
云虚拟主机教程
云服务器教程
Apache教程
IIS教程
Nginx教程
网站策划
站长文章
推广教程
淘宝客教程
网页设计
HTML教程
XHTML教程
CSS教程
HTML5教程
CSS3教程
JavaSript基础
JQuery教程
Node.js教程
前端技术
Ajax教程
Js特效
Xml教程
平面设计
页面UI设计
photoshop教程
程序开发
AI人工智能
Asp教程
Php教程
Asp.Net教程
Net Core教程
C#教程
Java教程
Jsp教程
开发技术
微信小程序教程
Uniapp开发教程
微信公众号开发
Andriod教程
IOS教程
DOS教程
Python教程
Docker教程
Windows Container教程
数据库
MSSQL教程
MySQL教程
Redis教程
Access教程
Oracle教程
数据库教程
操作系统
Linux教程
Windows教程
MAC教程
Cisco教程
交换机教程
防火墙教程
搜索
爱易网页
ASP.NET教程
BlueViewer 地图加载分析(C#)
BlueViewer 地图加载分析(C#)
日期:2011-05-24 浏览次数:20684 次
BlueViewer是基于.NET Link进行ArcIMS二次开发的一个实例,里面包含了WebGIS最基本的一些功能。关于ArcIMS结构及其简介可以参考我的另外一篇随笔《
ArcIMS体系结构
》。关于.NET Link连接器的介绍可以参考《
ArcIMS连接器--.NET Link使用方法
》。Mars写了一篇《
浅析ArcIMS
》,对BlueViewer做了简单的分析。
使用.NET Link进行ArcIMS二次开发并不复杂,但不少刚刚接触GIS朋友面对大量JavaScript和ArcXML,加上对WebGIS运行机制不了解,还是感觉无从下手。这篇随笔将对BlueViewer地图加载显示机制进行剖析,看看整个代码的运行过程,代码语言使用C#。
使用HTML、ArcExplorer、JavaViewer客户端进行开发,需要在客户端使用JavaScript对ArcXML进行编写与封装,虽然ArcXML的传输过程变得相对简单,但对人的耐力绝对是个莫大的考验,因此一般建议使用ArcIMS的各种连接器进行二次开发,BlueViewer就是基于.NET Link进行二次开发的一个实例。
连接器的主要作用,就是根据客户端的请求,将请求封装为ArcXML传输到ArcIMS应用服务器,以及将ArcIMS应用服务器发送回来的结果提取出来(一般为图片),发送给客户端,响应用户请求。在客户端,用户对地图的操作及地图的显示还是由JavaScript来控制,但相对于在客户端编写ArcXML来说,其工作量还是要减轻不少,开发方法更符合OOP,其中.NET Link相对来说在面向对象方面做的不怎么好,但使用ASP.NET进行开发,.NET Link是不二的选择。
下面是对程序启动地图显示过程的分析
----------------------------------------
在default.aspx中有五个隐藏域,hvMinX、hvMinY、hvMaxX、hvMaxY、hvMapPage,前四个对象描述当前地图显示范围,最后一个返回地图显示的url。程序启动第一步就是初始化这些值,在default.aspx.cs中有详细描述。
protected
void
Page_Load(
object
sender, System.EventArgs e)
{
if
(
!
(IsPostBack))
上一篇:[环境搭建] VS-Visual Studio-IIS Express 支持局域网访问 远程调试
下一篇:C#2.0泛型学习--入门篇
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
VS2010水晶报表的添加与使用
VS2011创建的ASP.Net网站程序查看网页如何没有设计视图
NPOI 有对word读写操作的方法吗?解决方法
求点击textbox弹出treeview,其后把选择的值传入textbox的代码
求大神过来指导
求解一个小小的有关问题·
从 Visual Basic 6.0 到 Visual Basic.NET 的转换(3)_Asp.Net基础教程
MVC与三层架构组合,求思路,求简单demo(初学)
Request.Form有关问题
推荐阅读
更多>
一个很简单的弹出窗口有关问题
digg 网站或者blog系统 每篇文章简介部分的缩略图 怎么自动生成呢
ASP.Net中利用CSS实现多界面两方法
ASP.NET给select联动赋值,该怎么解决
ASP.NET(C#) RSA 的实现疑惑,该如何处理
datagrid,呀.了一天了.多谢
AjaxPro真正实现无限级分类联动,含数据库(申请加精)解决方案
csharp:Optical Character Recognition
请问一个正则表达式
关于TAB控件的有关问题!请指点一下,多谢
服务器端代码如何根据SessionID,找到Session并操作它
GridView1.Rows.Count解决方法
┏急┛ 们帮帮忙啊!
ASP.NET不要服务器控件开发
在一个网页当中有10个updatepanel,请教这样会不会使网页变得很慢
100分求将EXECL文件导入到DataSet中,处理完再增加到已有表中的详细代码解决方案
URL重写,如何让传过去的id转换成用户名后,在重写URL(顶者有分)
一段下载代码的有关问题?调试可以,放到IIS上就不行?咋回事
关于取出纪录的前10个字解决办法
【【WebRequest】】 请求,