文档介绍:详细讲解如何编辑SDE数据[新手老手常见的问题剖析]很多刚入门的朋友对SDE数据并不太了解,接二连三的在社区里面发问,有时也得不到很好的解答,对此懒羊羊也深感同情。想到刚入门时的痛苦,懒羊羊决定抽写时间出来详细的讲述如何去编辑SDE数据,希望可以跟广大新手一同成长,度过入门的艰难时期。如有错误或表述含糊的地方,还请众高手指正。SDE矢ESRI开发的一个空间数据引擎,能够利用文件数据库良好的管理优势去管理数据的图形和属性。AccessDatabase与后来的FileGeoDataBase同样也能够很好的管理数据,但是与SDE数据库最大差别是它们不支持多用户同时编辑,也就是SDE的版本技术。虽然大家都知道这些,但是懒羊羊还是要顺便提一下。很多人第一次接触SDE数据的时候思想可能还停留在对shp文件或是MDB文件的操作上面。事实上它们大部分的操作时一致的,但接入的方式有所不同。由于SDE多了一个版本的控制,所以在数据的载入与打开FeatureClass的时候有很大的差别。下面开始转入正题,讲述一下如何对SDE数据进行操作。。SDE数据一定要使用工作空间工厂去初始化工作空间,在工作空间打开FeatureClass,这是最常规的操作。下面通过一段C#代码连接SDE,打开并返回一个IWorkspace。publicIWorkspaceFindWsByDefault(){IPropertySetpropSet=newPropertySetClass();("Server",Lan);("Instance",yangyang);("Database","");("User",user);("Password",pwd);("Version",version);IWorkspaceFactoryfactory=newSdeWorkspaceFactoryClass();IWorkspaceworkspace=(propSet,0);returnworkspace;}通过上述代码打开了SDE的工作空间,接下来要做的就是获取要编辑的FeatureClass。写一个函数,通过FeatureClass的别名和所在的Dataset返回FeatureClass。做法是先遍历所有的DataSet,找到符合要求的Dataset之后遍历里面的要素,返回与参与别名一致的FeatureClass(顺便说一下,FeatureClass在没有指定别名的时候默认与FeatureClass名称相同)//查找指定要素publicIFeatureClassFindClassByName(IWorkspacews,stringclassName,stringdsName){IEnumDatasetenumDs;if(dsName!=""){enumDs=();IFeatureDatasetfeatureDs=()as