arcgis는 쿼리 작업(QueryTask)과 ExecuteAsync를 실행합니까?
url = string.Format("http://{0}/arcgis2/rest/services/baidu/MapServer/{1}", ip, layerID); QueryTask queryTask = new QueryTask(url); queryTask.ExecuteCompleted += new EventHandler<QueryEventArgs>(queryTask_ExecuteCompleted); queryTask.Failed += new EventHandler<TaskFailedEventArgs>(queryTask_Failed); ESRI.ArcGIS.Client.Tasks.Query query = new ESRI.ArcGIS.Client.Tasks.Query(); query.OutFields.Add("*"); query.ReturnGeometry = true; query.Where = string.Format("FID={0}", QueryText); queryTask.ExecuteAsync(query); private void queryTask_Failed(object sender, TaskFailedEventArgs e) { MessageBox.Show("Query failed: " + e.Error); } private void queryTask_ExecuteCompleted(object sender, QueryEventArgs e) { FeatureSet featureSet = e.FeatureSet; if (featureSet != null && featureSet.Features.Count > 0) { Graphic selectedFeature = featureSet.Features[0]; // 放大到选择的要素 ESRI.ArcGIS.Client.Geometry.Envelope selectedFeatureExtent = selectedFeature.Geometry.Extent; double expandPercentage = 30; double widthExpand = 2000 * (expandPercentage / 100); double heightExpand = 2000 * (expandPercentage / 100); ESRI.ArcGIS.Client.Geometry.Envelope displayExtent = new ESRI.ArcGIS.Client.Geometry.Envelope( selectedFeatureExtent.XMin - (widthExpand / 2), selectedFeatureExtent.YMin - (heightExpand / 2), selectedFeatureExtent.XMax + (widthExpand / 2), selectedFeatureExtent.YMax + (heightExpand / 2)); myMap.ZoomDuration = new TimeSpan(0, 0, 2); myMap.ZoomTo(displayExtent); } }
에 대해 자세히 알아야 합니다. 관련 권장 사항:
Win7 및 Win8_MySQL에서 ArcGIS 소프트웨어 또는 Node.js 및 기타 설치 패키지를 설치할 때 발생하는 2503 오류에 대한 해결 방법
Baidu 지도의 효과 javascript_javascript용 Arcgis 기반 ABCD 마커 실력
위 내용은 arcgis를 사용하여 쿼리 작업을 수행하는 방법을 가르칩니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!