您的位置:首页 > 产品设计 > UI/UE

arcgis api for silverlight开发系列之五:QueryTask,FindTask,IdentifyTask区别

2011-11-01 14:24 323 查看
上一篇说到QueryTask,貌似有点晦涩,全是代码,这篇我们来一次总结梳理一下思路。不过,各位朋友有时候代码虽然食之无味,但是如果亲自敲过并得到效果,那才能印象深刻,也是对自己最有帮助的过程。

首先看一下任务对象结构图:



QueryTask(查询任务)允许你从ArcGIS Server地图服务层中,或者由MapIt空间数据服务的表格中获取要素。可以通过使用空间范围和/或属性条件获取要素。

FindTask (查找任务)允许对地图中一个或多个图层的要素进行模糊查询(基于文本型属性字段)。

IdentifyTask (通过识别任务)可以搜索地图层中与输入几何形相交的要素。一旦返回匹配的要素,就可使用.net代码在Silverlight应用程序中显示要素的几何图形和属性。

使用 Task通常包括三个步骤:

1) 实例化Task对象,注册Task完成、失败的监听事件;

2) 实例化Task参数对象,为必要属性赋值,发送请求 ;

3) 在Tas完成事件处理函数中返回处理结果或在Task失败事件处理函数中处理错误信息。

FindTask和QueryTask,前者的查找对象是整个地图服务,可以是其中一个或多个图层,而后者查询对象是地图服务中的单个图层;FindTask只能对文本字段进行模糊查询,而QueryTask不仅可以对所有字段进行属性查询(文本匹配,数值比较,日期范围),还可以使用空间范围条件,或者属性条件与空间范围条件结合进行查询。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐