欢迎来到天天文库
浏览记录
ID:22645736
大小:119.25 KB
页数:5页
时间:2018-10-30
《arcgis server 开发系列(二)--web adf 编程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、ArcGISServer开发系列(二)--WebADF编程2007-08-1410:01byFlyingis,12454visits, 作者:Flyingis WebADF全名是WebApplicationDevelopeFramework,是ArcGISServer专用的开发框架,9.2版本的ArcIMS也开始提供ADF的封装。完全使用Web控件编程几乎不能解决我们实际项目中的问题,因此我们从《ArcGISServer开发系列(一)--编程框架总览》中提到的途径二开始,即webcontrols+commondatas
2、ourceapis。 目标: 根据查询语句实现图层信息查询 准备工作: 1.WindowsXPsp2中/英文版 2.VisualStudio2005中/英文版 3.ArcGISServer9.2(我打上了sp2补丁),创建一个ArcGISServer服务,MapServer属性中更改Pooling,使用池化连接方式,Progresses选择“Inaseperateprocessforeachinstance(highisolation)”,我的服务为“World” 4.利用vs2005创建一个模板
3、server应用--WebMappingApplication,并更改MapResourceManager属性 这样我们可以测试程序看是否能够正常运行,启动调试看到如下结果: 代码实现: 我们要完成的工作是对图层属性信息的查询,首先在页面左侧添加一个新的panel,左侧的Tasks、Results等都是放置在panel之中,在这个新的panel中分别添加TreeViewPlus、TextBox、Button三个控件,TextBox输入查询条件,Button确定查询,TreeViewPlus显示结果,在设计试图中浏
4、览效果如下: 双击“Query”Button,编写点击事件。 protected void cmdQuery_Click(object sender, EventArgs e) { Query(Map1.Extent); } Query方法实现了对图层属性信息的查询。 protected void Query(ESRI.ArcGIS.ADF.Web.Geometry.Geometry geometry) { IEnumerable func_enum = nul
5、l; //获取当前map1控件中所有的functionality func_enum = Map1.GetFunctionalities(); System.Data.DataTable datatable; //对所有的functionality进行遍历 foreach (ESRI.ArcGIS.ADF.Web.DataSources.IGISFunctionality gisfunctionality in func_enum) {
6、 ESRI.ArcGIS.ADF.Web.DataSources.IGISResource gisresource = null; //得到该functionality的resource gisresource = gisfunctionality.Resource; //判断该resource是否支持IQueryFunctionality bool supported = false; supp
7、orted = gisresource.SupportsFunctionality(typeof(ESRI.ArcGIS.ADF.Web.DataSources.IQueryFunctionality)); if (supported) { ESRI.ArcGIS.ADF.Web.DataSources.IQueryFunctionality qfunc; qfunc = (ESRI.ArcGIS.ADF.Web.Data
8、Sources.IQueryFunctionality)gisresource.CreateFunctionality(typeof(ESRI.ArcGIS.ADF.Web.DataSources.IQueryFunctionality), null); st
此文档下载收益归作者所有