爱易网
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 浏览次数:20730 次
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泛型学习--入门篇
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
ASP.NET中为DataGrid添加单选框
请大家指正小弟我对三层机构的理解
多个窗体之间如何互相调用
一下拉控件有关问题
小弟我的那个字符串很多 请大家帮忙
一段很简单的js代码,搞了很久,还是有错,请高手帮小弟我看一下!马上结分
小弟我想做个一屏半的网页,但是.NET只能显示一屏!怎么处理呢
推荐几个文章手册等, 怎么在asp.net中应用.inc文件作为模板生成html页面
asp 的mac正则表达式有关问题
推荐阅读
更多>
这要用什么控件?该如何处理
.net 2.0(c#)下简单的FTP应用程序
网页导航栏鼠标放上去变色。但为什么变色的背景色不是整个li。而只是<a>的区域。求帮忙,该怎么解决
求 javascript日期控件,该如何处理
laber控件可以有html标签也有Eval绑顶么?解决办法
抓取页面数据内容并截取正则太烂特来
GridView中添加ButtonField后,怎么与本行数据结合起来
ASP.NET 2.0 Treeview Checkboxes - Check All - Javascript
读ini文件有关问题-仅仅是读,写可以的-
DataGrid学习四_数据库应用
silverlight socket 怎么支持 ansi 和 gb2312编码
关于DataGrid Web控件的热门问题__连载之四
前台稿子的显示控件及属性
IHttpModule访问Cookie解决思路
怎么防止SQL注入?(存储过程,参数化都用到了!)
何位老大给讲讲原理
关闭MDI 窗体时,其子窗体closing事件为 e.Cancel = true; 应该怎么关闭MDI窗体
在winform项目中引用webservice有关问题
改善图象质量,当使用 Visual Studio .NET 在 Web 上查看水晶报表报表时
INSERT 语句与 COLUMN FOREIGN KEY 约束 冲突,该怎么处理