ArcGIS10.0和Oracle10g的空間數據管理平臺開發
文章類型:  新聞中心
本系統的一個重點功能就是管理空間數據,所以很多空間數據的操作,而且這些操作可能隨時都可能用到,所以單獨封裝為一個獨立的空間數據操作類(地圖操作類)。封裝的函數都是一些最基本的操作功能,具體實現基于ArcGIS平臺的空間數據管理還需要很多復雜的功能和邏輯,后面介紹空間數據管理和編輯的時候會詳細介紹。
1.首先我們需要介紹的是連接空間數據庫的代碼函數,具體實現如下:
 
1. /// <summary>
2. /// 連接空間數據庫并得到一個SDE工作空間的實例
3. /// </summary>
4. /// <returns></returns>
5. public static IFeatureWorkspace GetFeatrueWorkspace()
6. {
7. //定義一個屬性
8. IPropertySet pPS = new PropertySetClass();
9.
10. //設置數據庫服務器名,服務器所在的IP地址
11. pPS.SetProperty("SERVER", ConfigurationSettings.AppSettings["SERVER"]);
12. //propset.SetProperty("SERVER", "10.51.6.233");
13. //設置SDE的端口,這是安裝時指定的,默認安裝時"port:5151"
14. pPS.SetProperty("INSTANCE", ConfigurationSettings.AppSettings["INSTANCE"]);
15. //SDE的用戶名
16. pPS.SetProperty("USER", ConfigurationSettings.AppSettings["USER"]);
17. //密碼
18. pPS.SetProperty("PASSWORD", ConfigurationSettings.AppSettings["PASSWORD"]);
19. //設置數據庫的名字,只有SQL Server Informix 數據庫才需要設置
20.
21. pPS.SetProperty("DATABASE", ConfigurationSettings.AppSettings["DATABASE"]);
22. //SDE的版本,在這為默認版本
23. pPS.SetProperty("VERSION", ConfigurationSettings.AppSettings["VERSION"]);
24.
25. //定義一個工作空間,并實例化為SDE的工作空間
26. IWorkspaceFactory pWF = new SdeWorkspaceFactoryClass();
27. //打開SDE工作空間,并轉化為地物工作空間
28. IFeatureWorkspace pFW = (IFeatureWorkspace)pWF.Open(pPS, 0);
29. return pFW;
30. }
上面這個函數是采用SDE連接方式,也可以采用直接連接的方式,下面一個函數通過一個if分支語句來判斷可以采用SDE也可以采用直接連接的方式實現,具體請看代碼及詳細的注釋.

 

發布日期:2014-02-12 17:39:28