阅读:1682回复:2
[讨论] 利用C#改写ArcIMS9.0中的NetLink开发的例子BlueViewer
<P>各位大侠:<BR> 我最近在用C#与ArcIMS9.0开发一个WebGIS服务站点;在ArcIMS9.0中自带了一个例子BlueViewer;它是用VB.net语言写的。我现在希望直接改写这里例子;因此一些基本得功能就可以借用了。我在改写过程发现在发送AXL文本时;他们这两种语言有那些不同呢?</P>
<P>VB.net:</P> <P>Dim sAXLText As String<BR>sAXLText = "<?xml version=""1.0"" encoding=""UTF-8""?><ARCXML version=""1.1"">"<BR>sAXLText = sAXLText ; "<REQUEST><GET_IMAGE><PROPERTIES>"<BR>sAXLText = sAXLText ; "<IMAGESIZE width=""" ; iWidth ; """ height=""" ; iHeight ; """/>"<BR>sAXLText = sAXLText ; "<ENVELOPE minx=""" ; Request.QueryString("XMIN") ; """ miny=""" ; Request.QueryString("YMIN") ; """ maxx=""" ; Request.QueryString("XMAX") ; """ maxy=""" ; Request.QueryString("YMAX") ; """ />"<BR>sAXLText = sAXLText ; "<LEGEND display=""false"" />"<BR>sAXLText = sAXLText ; "</PROPERTIES></GET_IMAGE></REQUEST></ARCXML>"</P> <P>我改写后的C#代码:</P> <P>string strAXLtext;<BR>strAXLtext ="<?xml version=\"1.0\" encoding=\"UTF-8\"?><ARCXML version=\"1.1\">";<BR>strAXLtext=strAXLtext + "<REQUEST><GET_IMAGE><PROPERTIES>";<BR>strAXLtext=strAXLtext + "<IMAGESIZE width=\" ; iWidth ; \" height=\" ; iHeight ; \"/>";<BR>strAXLtext=strAXLtext + "<ENVELOPE minx="+System.Convert.ToInt32(Request.QueryString["XMIN"])+"miny=" + System.Convert.ToInt32(Request.QueryString["YMIN"]) + " maxx=" + System.Convert.ToInt32(Request.QueryString["XMAX"]) +" maxy=" +System.Convert.ToInt32(Request.QueryString["YMAX"]) +" />";<BR>strAXLtext=strAXLtext + "<LEGEND display=\"false\" />";<BR>strAXLtext=strAXLtext + "</PROPERTIES></GET_IMAGE></REQUEST></ARCXML>";</P> <P><BR>其中主要错误可能在于下面这个两句:</P> <P>strAXLtext=strAXLtext + "<IMAGESIZE width=\" ; iWidth ; \" height=\" ; iHeight ; \"/>";<BR>strAXLtext=strAXLtext + "<ENVELOPE minx="+System.Convert.ToInt32(Request.QueryString["XMIN"])+"miny=" + System.Convert.ToInt32(Request.QueryString["YMIN"]) + " maxx=" + System.Convert.ToInt32(Request.QueryString["XMAX"]) +" maxy=" +System.Convert.ToInt32(Request.QueryString["YM<BR>AX"]) +" />";</P> <P>因为我在测试过程中不能显示地图;我就利用下面这个AXL字符串 就能正常显示地图</P> <P>strAXLtext="<?xml version=\"1.0\" encoding=\"UTF-8\"?><ARCXML version=\"1.1\"><REQUEST><GET_IMAGE><PROPERTIES><ENVELOPE minx=\"-92.22008299823985\" miny=\"38.10413631004013\" maxx=\"-85.79649638194\" maxy=\"42.35060128792963\" /><IMAGESIZE width=\"440\" height=\"330\" /></PROPERTIES></GET_IMAGE></REQUEST></ARCXML>";</P> <P>还有一个问题就是在C#或VB.net调用JavaScript脚本中的函数他们之间没有区别吧;这我在实现过程是直接切换到各自的HTML页面视图;复制其中公有的代码。但是C#编译后不能实现放大等功能!请问这个是什么原因呢?高手指点一二。</P> |
|
1楼#
发布于:2006-04-30 21:53
<P>论坛中有用NetLink开发的同仁吧;希望能相互交流!我的QICQ:275466646。期待着你们的加盟!!</P>
|
|
2楼#
发布于:2006-05-04 00:27
<P>各位有利用.NetLink开发的同仁这个例子网上已经有用C#改写好的程序;我也是最近才发现的,你们需要的在网上搜索BlueViewercs就是了!</P>
|
|