`

配置式AO连接数据库

阅读更多
首先,配置文件,setup.xml
<?xml version="1.0" encoding="utf-8" ?>
<setup>
  <ConnectionString>
    <oracleconnection>Provider=MSDAORA;Persist Security Info=true;User ID=xxxx;password=xxxx;Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=xxooxooxx)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)))</oracleconnection>
    <GISUSER>xx</GISUSER>
    <SDEServer>xxooxooxx</SDEServer>
    <SDEInstance>5151</SDEInstance>
    <SDEUser>xxxx</SDEUser>
    <SDEPwd>xxxx</SDEPwd>
    <SDEDatabase>ORCL</SDEDatabase>
    <SDEVersion>SDE.DEFAULT</SDEVersion>
    <bufferDistance>5</bufferDistance>
    <filterDistance>10</filterDistance>
  </ConnectionString>
</setup>



其次,读取配置文件,
   public static string Get_Xml(string xml_name)
        {

            XmlDocument xmldoc = new XmlDocument();
            xmldoc.Load("./setup.xml");
            XmlNodeList nodelist = xmldoc.SelectSingleNode("setup").ChildNodes;//第一个节点
            string rusult = nodelist.Item(0).SelectSingleNode(xml_name).InnerText;
            return rusult;
        }

然后,连接数据库,
private void button3_Click(object sender, EventArgs e)
        {
            string sdeServer = Get_Xml("SDEServer");
            string sdeInstance = Get_Xml("SDEInstance");
            string sdeDatabase = Get_Xml("SDEDatabase");
            string sdeUser = Get_Xml("SDEUser");
            string sdePassword = Get_Xml("SDEPwd");
            string sdeVersion = Get_Xml("SDEVersion");
            double bufferDis = Convert.ToDouble(Get_Xml("bufferDistance"));
            double filterDis = Convert.ToDouble(Get_Xml("filterDistance"));
            IWorkspaceFactory sdeWorkspaceFactory;
            IFeatureWorkspace workSpace;

            try
            {
                ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCode.EngineOrDesktop);

                //授权信息加载

                ESRI.ArcGIS.esriSystem.IAoInitialize m_AoInitialize = new ESRI.ArcGIS.esriSystem.AoInitialize();
                m_AoInitialize.Initialize(ESRI.ArcGIS.esriSystem.esriLicenseProductCode.esriLicenseProductCodeArcInfo);


                //进行license控件的初始化
                IAoInitialize m_pAoInit = new AoInitializeClass();
                m_pAoInit.Initialize(esriLicenseProductCode.esriLicenseProductCodeArcServer);

                IPropertySet propSet = new PropertySetClass();
                propSet.SetProperty("SERVER", sdeServer);
                propSet.SetProperty("INSTANCE", sdeInstance);
                propSet.SetProperty("USER", sdeUser);
                propSet.SetProperty("PASSWORD", sdePassword);
                propSet.SetProperty("DATABASE", sdeDatabase);
                propSet.SetProperty("VERSION", sdeVersion);

                sdeWorkspaceFactory = new SdeWorkspaceFactoryClass();
                workSpace = (IFeatureWorkspace)sdeWorkspaceFactory.Open(propSet, 0);

             //   MessageBox.Show("数据库练级成功!");
                //得到路段图层
                IFeatureClass pFCLuDuan = (workSpace as IFeatureWorkspace).OpenFeatureClass("路段");

                IFeatureLayer pFLLuDuan = new FeatureLayer();
                pFLLuDuan.FeatureClass = pFCLuDuan;
                pFLLuDuan.Name = "路段";


                ILayer pLayer = pFLLuDuan as ILayer;


                IMap pMap = axMapControl1.Map;

                pMap.AddLayer(pLayer);

                axMapControl1.ActiveView.Refresh();

            }
            catch (Exception ex)
            {

            }

        }
      
1
2
分享到:
评论

相关推荐

    vb连接sde数据库方法

    在这个过程中,我们首先要理解AO的工作原理和数据模型,以及如何配置连接参数来访问Oracle数据库中的SDE数据。 1. **AO的Geodatabase数据模型**: AO的Geodatabase模型是一种抽象的数据模型,它独立于具体的存储...

    AO2011使用说明

    这是因为 AO2011 需要连接到 SQL Server 数据库以便正确地运行。要启动桌面 SQLServerManager,用户需要按照以下步骤进行操作: * 打开桌面上的 SQLServerManager 图标 * 选择“SQL Server 2005”—“SQL Server...

    csharp 写的ao系统源码,可以改为商业用,也可以用来学习

    6. 配置文件(Config):包含系统配置信息,如数据库连接字符串、日志设置等。 7. 服务层(Service):可能包含Web服务接口,用于系统间的通信和集成。 8. 日志(Log):记录系统运行时的错误和事件,有助于调试和...

    春元财务软件数据的Oracle数据库.doc

    以上是对春元财务软件数据的Oracle数据库文档的详细解读,涵盖了从连接数据库、数据采集到数据处理的关键步骤和知识点。这些内容对于理解如何有效地管理和审计朴直春元财务系统的数据至关重要。

    和利时系统数据库编辑参考.doc

    内部点(AM 类点)是系统内部计算产生的中间变量,具有类似AI点的配置,但不直接连接到现场设备。而数据存储点(DM 类点)用于存储和处理非实时的设定值或状态信息,配置包括PN、DS、E0、E1、SN、报警属性AF、报警级...

    基于AO的符号组件设计与实现

    - **数据库连接**:为了实现符号库文件的统一管理,需要通过数据库连接进行数据的存取操作。 - **样式仓库**:样式仓库用于统一系统内符号的管理和使用,确保一致性。 #### 数据库设计 - **符号库文件存储**:@....

    实时数据库和关系型数据库的差异ppt课件.pptx

    1. **数据类型**:RTDB主要处理AI(模拟输入)、AO(模拟输出)、DI(数字输入)和DO(数字输出)等类型的数据,以及任务配置、监视、调整、查询、编程和分析等任务。 2. **实时性**:RTDB设计的核心在于高效地...

    AO2011培训课件(一)安装及准备.pdf

    9. **灵活的数据采集与分析**:新增了连接大型数据库的能力,利用SQL Server 2008的Linked Server功能,可以直接浏览和分析数据,以优化采集策略。 10. **辅助工具增强**:提供了行业模板、项目档案模板和审计事项...

    AO2011培训课件(一)安装及准备.docx

    AO2011是一款审计软件,它在2011年进行了重大改版,改进了多项功能以适应审计行业的变化和技术的进步。以下是该版本的主要特点和...安装过程中可能还需要配置数据库连接、设置用户权限等,以确保软件能顺利运行和使用。

    ao-alterdb:一个为敏捷办公室解决数据库问题的应用程序

    3. 配置项目设置,如数据库连接信息。 4. 使用CLI或API执行数据库操作。 5. 将`ao-alterdb`集成到你的CI/CD流程中,以实现自动化。 总之,`ao-alterdb` 是一款为敏捷办公环境量身打造的数据库管理工具,通过...

    AO采集非税收入财务数据方法.doc

    总之,AO采集非税收入财务数据的方法涉及数据库的安装、配置、数据还原和数据处理等多个环节。通过这些步骤,审计人员可以高效地从Oracle数据库中获取和分析非税收入管理系统的财务数据,以支持审计决策和报告。

    AO学习资料

    - **性能调整**:通过对数据库进行优化配置,提高查询和处理的速度。 - **版本控制**:支持多用户环境下的数据版本控制。 #### 2.8 ArcObjects 在ArcEngine中的应用 ArcEngine是ArcObjects的核心部分之一,提供了...

    IFIX中在数据库的SIGNAL CONDITIONING第13章.模拟量标签.doc

    总结来说,IFIX中的模拟量标签是连接物理世界与数据库的关键桥梁,通过信号调理功能,确保了从现场设备获取的数据能够准确、直观地反映在系统中。了解并熟练掌握模拟量标签的配置和信号调理,对于IFIX用户来说至关...

    VB+AO实现ArcGIS中的基本功能

    数据编辑功能通常涉及到IMapDocument或IWorkspaceFactory接口,它们允许开发者打开现有的GIS文档或连接到数据库,进行添加、修改或删除地理要素的操作。这可能包括创建IFeatureLayer,获取IFeatureClass,然后使用...

    AO二次开发VB入门

    【AO二次开发VB入门】是针对ArcGIS平台的ArcObjects组件进行编程的初学者指南,主要涉及在VB环境中使用ArcObjects进行地图应用的扩展和定制。以下是对标题和描述中所述知识点的详细说明: 1. **开发环境**: - **...

    ifix学习心得.doc

    7. 插入功能:IFIX支持插入数据连接(TAG名)、图表(实时趋势)、OLE对象(如动画)以及报警一览等功能,便于创建交互式界面。 8. 格式编辑:提供图形编辑工具,如对齐和相同尺寸调整,方便统一画面风格。 9. ...

    oracle dba 面试题目及答案

    在Oracle数据库中,数据库的启动过程分为三个主要阶段:`STARTUP NOMOUNT`、`STARTUP MOUNT` 和 `STARTUP OPEN`。 - **STARTUP NOMOUNT**:此时数据库实例已经启动,但数据库文件还没有被装载。在这个阶段,我们...

    Node.js微博Microblog演示系统

    - **config**:配置文件,如数据库连接信息、全局设置等。 - **package.json**:项目依赖和元数据文件,列出所有必需的npm模块和版本信息。 - **node_modules**:实际的依赖库文件夹,包含Express、MongoDB驱动和...

    win10系统oracle的图文安装教程及 plsql 系统64位.docx

    在本文中,我们将详细介绍如何在Windows 10系统上安装Oracle数据库,并且连接32位的PL/SQL Developer到64位的Oracle数据库。Oracle数据库是企业级的关系型数据库管理系统,而PL/SQL Developer则是一款强大的Oracle...

Global site tag (gtag.js) - Google Analytics