随笔分类 - C#开发ArcGIS软件
把自己在完成基于ArcGIS10平台的空间数据库管理平台的过程和技术实现做一个详细的分析和记录。
摘要:本系统的一个重点功能就是管理空间数据,所以很多空间数据的操作,而且这些操作可能随时都可能用到,所以单独封装为一个独立的空间数据操作类(地图操作类)。封装的函数都是一些最基本的操作功能,具体实现基于ArcGIS平台的空间数据管理还需要很多复杂的功能和逻辑,后面介绍空间数据管理和编辑的时候会详细介绍。1.首先我们需要介绍的是连接空间数据库的代码函数,具体实现如下: /// <summary> /// 连接空间数据库并得到一个SDE工作空间的实例 /// </summary> /// <returns></returns> pu...
阅读全文
摘要:先打一个广告:我的独立博客网址是:http://wuyouqiang.sinaapp.com/。 我的新浪微博:http://weibo.com/freshairbrucewoo。 欢迎大家相互交流,共同提高技术。 其实开发一个项目,难点不在于语言方面,不管哪一种语言都不是你实现一个项目的阻力,其实真正能不能完成一个项目,要看能不能完整而详细的理解项目的需求,然后理解需求的基础又是对行业相关知识的把握,只有弄清楚了行业知识以及相关的概念并且能够深入理解,才能轻松加愉快的完成项目,不然的话只有每天在无情的加班和代码面前无能为力。就针对我讲解的这个项目的开发,对于当时的我来说却是存在很多新的概念.
阅读全文
摘要:由于在介绍通用数据管理模块功能的时候用到了许多通用的功能,例如word和excel与DataGridView控件的相互导入导出、写日志到数据库中等等。为了后面每一篇文章都能清楚的知道每一个功能具体是怎么实现的,现在先统一把用到的所有公用功能统一介绍和实现。由于SqlHelper类,也就是数据库的一些通用操作已经在登录模块中介绍,就不在重复介绍了。本篇将相介绍通用工具类CommonTools,由于代码中有比较详细的注释了,就不详细解析具体代码的功能了。这个类实现的功能如下。1.从DataGridView控件导出数据到Word文档 /// <summary> ///...
阅读全文
摘要:上一篇文章把整个系统的主界面实现了,接下来就是实现主界面上提供的各个功能模块。首先介绍的是通用数据管理模块,为什么称为通用数据呢?因为这些数据和我们平时使用关系型数据库管理的数据是类似的,这里称为通用数据主要是为了和空间数据做区别。 该模块采用统一的界面来管理所有属性数据表,可以同时做添加、删除和修改,而且对于每一个表都是通用的操作。用户选择修改的表以后就建立一个数据集和这个表关联,再将这个数据集绑定到数据显示控件上,同时将数据集绑定到数据适配器上,当用户对这个表的编辑操作完成以后并点击保存按钮就会将所有的更新操作与数据库同步,这些功能都是调用数据适配器的接口完成。在与数据库同步的时候会先查.
阅读全文
摘要:上一篇文章介绍了简单的登录功能实现,也随便把SQL的帮助类也讲解了。其中SqlHelper这个类的构造函数我们在初始化连接字符串有两种方式,代码中有所体现了,一种就是直接赋值为需要的连接字符串,这种方式别人看不到你具体数据库的连接信息,但是不方便修改,每次修改都需要修改代码并且重新编译;第二种方式就是在配置文件中配置,这样我们的系统在运行到别的电脑上,只需要修改配置文件中的连接字符串信息就可以了,很方便。我们简单看一下配置文件的类容,讲解一下配置文件各个配置选项的意义。<?xml version="1.0" encoding="utf-8" ?&g
阅读全文
摘要:开发这个系统开始最大的难点就是开发环境的搭建,VS2008、Oracle10g以及SVN这些资料比较多,也很容易就建立好了,所以难点就是在ArcGIS开发环境的搭建。ArcGIS搭建包括几个方面,有安装开发包、一些操作ArcGIS地图的桌面工具以及基于某种特定关系数据库的ArcSDE空间数据库插件,ArcSDE空间数据库插件主要用于管理空间数据,一般的属性数据关系型数据库就可以管理了,但是涉及到一些空间数据必须得用ArcSDE插件来管理,当然还有其他很多类似的产品,如国产的超图,还有国外用的比较多的MapInfo,我第一次接触GIS开发就是接触的MapInfo。我这个项目当然是安装基于Ora.
阅读全文
摘要:上一篇文章把整个系统的框架和功能简单介绍了一下,这个系统的架构就是C/S,数据库采用的是Oracle10g,空间数据库采用的ArcGIS基于Oracle10g的ArcSDE,开发工具用的是VS2008,开发平台是.NET Framework3.5,代码的版本控制工具是SVN。 在讲解整个系统的实现的时候我是按照我开发的功能顺序介绍,其实很多功能模块都是相对独立的,今天就从最简单的登录模块的实现开始。登录模块在两个地方使用到,第一处当然就是第一次进入主界面以前,第二次是进入元数据管理子系统的时候需要用有相应权限的账户登录。界面的设计就不详细介绍了,这个可以通过开发工具直接拖出来,及所谓的所见即.
阅读全文