WebGIS實現在線要素編輯之ArcGIS Server 發布Feature Service 過程解析


    WebGIS實現在線要素編輯之ArcGIS Server 發布Feature Service 過程解析

     FeatureService也稱要素服務,其最大的好處就是支持在線要素編輯,並將編輯同步更新到后台的數據庫中,它需要ArcSDE提供地理數據庫的訪問支撐。因此Feature Service中的要素來源必須是來自於ArcSDE。

     關於Feature Service的詳細介紹,可參考官網文檔:

http://help.arcgis.com/en/arcgisserver/10.0/help/arcgis_server_dotnet_help/index.html#/What_is_a_feature_service/009300000020000000/

說明:

本機開發環境:

ArcGIS Server 10.0

ArcSDE 10.0 for MSSQL EXPRESS 2008 R2

本文前提條件:已經安裝了ArcSDE並在ArcCatalog成功建立了數據庫連接。如圖所示:

 

一、准備數據:在ArcSDE中添加自定義點要素

      作為測試,這里我們在本機的ArcSDE中新建一個點要素類(其他要素類同理),該要素類表示一個點污染源。過程如下所示:

輸入點要素名稱,及別名,點擊下一步。

選擇坐標系,由於最終我們要在Web地圖中顯示,所以這里我們選擇了WebMecator。然后點擊下一步,選擇默認的容差設置,點擊下一步設置要素字段。

如上所示,這里我們添加了如上所示的一系列字段,包含污染源的編號,名稱,經緯度,排放濃度值,負責人,運行狀態,聯系人等。

之后點擊確定完成點要素的添加。

2、為ArcSDE數據庫添加屬性域(該步驟可選)

       關於屬性域的介紹可參考官方文檔:

     http://help.arcgis.com/en/arcgisdesktop/10.0/help/#/A_quick_tour_of_attribute_domains/001s00000001000000/

     由於在編輯要素時,因為要素的屬性值(字段)只能是某一類型,或者在某一范圍,或者是某些值中的一個。因此在編輯的時候我們就不能隨意的輸入,以確保數據不被破壞。那么這里就需要限制用戶的輸入。例如對於污染源的運行狀態只能是:關閉或者運行。不能是其他的值。因此這里我們就需要借助屬性域來確保用戶輸入的是正確的值,並更新到我們后台的數據庫中。具體操作如下:

右鍵地理數據庫,選擇屬性

添加如下所示的屬性域值

以上過程可參考:

http://help.arcgis.com/en/arcgisdesktop/10.0/help/#/Creating_a_new_attribute_range_domain/001s00000003000000/

http://help.arcgis.com/en/arcgisdesktop/10.0/help/#/Creating_a_new_coded_value_domain/001s00000004000000/

3、將屬性域應用到新建的點要素中。

右鍵要素,選擇屬性,在字段面板下,點擊每一個字段,下面會有屬性域選項,將我們剛才建立的屬性域應用到相應的字段中。比如:我們點擊運行狀態字段,可以將其屬性域設置為我們之前建立的名為state的屬性值。如下圖所示:

這樣,SourceState屬性值就只能是運行或者關閉了。從而使得用戶不能輸入其他非法的值,確保了數據的正確性。

4、新建MXD文檔,添加我們我們之前在ArcSDE中新建的點要素。

      打開ArcMap新建一個MXD文檔,將我們在ArcSDE數據庫中新建的點要素添加進來。。

以上我們看到污染源來自於sde數據庫,接下來設置污染源的符號系統。右鍵污染源——選擇屬性

點擊符號

選擇相應的符號,點擊確定。這時符號已經變成了我們設置的樣式了。這里設置的樣式也是之后在Web中添加點要素(污染源)時默認的樣式。

保存MXD文檔,並發布,發布可在ArcCatalog中進行,也可在ArcMap中直接發布。過程:在ArcMap中選擇剛才保存的文檔,右鍵——點擊發布到ArcGIS Server

 設置GIS服務相關選項

 輸入服務器名,選擇GIS服務,然后點擊下一步。

一定要勾選Feature Access,表示啟用要素服務。同時還可啟用其他的GIS服務。之后點擊下一步,完成發布過程。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM