1. 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