- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
扩展MapObjects数据源的研究I将Shapefile保存到ADO
扩展MapObjects数据源的研究I——将Shapefiles保存到ADO.NET数据集
蔡德利 郭庆丰 汪春
(黑龙江八一农垦大学植物科技学院 大庆,163319)
摘要:本文通过编程实现了Shapefiles中的几何对象与二进制数据流的双向转换,将Shapefiles引入到ADO.NET数据表中,使空间数据和属性数据的管理达到统一,GIS数据组织变得简单、高效,且突破了ESRI空间数据只能单独存放的限制。
关键词:Shapefiles;几何对象;数据流;ADO.NET;空间数据
Study for MapObjects Data Source Extension I – Import Shapefiles to ADO.NET Dataset
Cai Deli Guo Qingfeng Wang Chun
(College of Plant Sciences and Technology, Heilongjiang August First Land Reclamation University, Daqing 163319)
Abstract:Conversion between geometry objects of Shapefiles and binary data stream was carried out by programming. Then the Shapefiles were imported to ADO.NET DataTable. The manipulation mode of spatial data and attribute data could be unified. It made GIS data management simple and efficient. Further more, it broke through the limitation of ESRI spatial data in saving alone.
Keyword:Shapefiles;geometry objects;data stream;ADO.NET;spatial data
0 引言
MapObjects是由全球最大的GIS厂商——美国环境系统研究所(ESRI)推出的基于COM的GIS组件,其优点是可以无缝地嵌入到其他的软件中,由于强大的功能,MapObjects在GIS应用领域得到了广泛的应用。
由于ESRI为MapObject 2.2提供了运行环境可调用包装(RCW),所以当Microsoft的开发工具升级到.NET环境时仍然可以使用MapObjects的Map控件及相关对象。但由于MapObjects矢量图层使用旧的DAO数据访问方式,编程时经常发生错误;如果属性数据使用ADO.NET管理,与空间数据的协调就成了让人头疼的事。在编写精准农业GIS的时候,我们尝试用ADO.NET统一管理空间数据和属性数据,二者不仅无缝地融为一体,在功能上还突破了ESRI的许多限制,收到了意想不到的效果。
1 MapObjects数据源
MapObjects认为一个综合性的地图由多个图层构成,图层数据来源广泛,既可以是GIS矢量图层,也可以是CAD图层,甚至影像数据。矢量图层内部统一用记录集(Recordset)来表达,MapObjects也是可以通过ESRI的专用数据库引擎连接的专用数据库。
Recordset正象关系数据库中的二维表Shape字段以面向对象的技术封装了要素的图形部分。图形分为三种类型,即点、线、面引入了一个部件(Part)这些几何
2 ADO.NET
ADO.NET是一种新的数据访问策略,而不仅仅是ADO的改进版本,我们可以称其为“与数据源断开的活动连接”。
在许多情况下,应用程序需要处理下一条记录时都返回到数据库是不切实际的,因此解决方案就是临时存储从数据库检索的记录,然后使用该临时集,这便是数据集(Dataset)的概念。
数据集包含一个或多个表(DataTable,相当于实际数据库中的表),数据集中还可以包含表之间的关系以及对表数据约束的信息。数据集内的数据通常是数据库中内容的非常精简的版本,可以用与操作实际数据十分类似的方式操作(添加、修改、删除)数据集记录(DataRow),需要的时候,可以将这些更新写回到数据库中。
尽管数据集是作为从数据库获取的数据的缓存,但数据集与数据库之间没有任何实际关系,数据集仅仅是数据容器,我们也可以编程在内存中生成数据集。以下程序建立数据集和一个数据表:
Dim myDataset As New DataSet
Dim dt As DataT
文档评论(0)