『公告』 预祝您龙年大吉,万事如意, 过节期间, 大家如需数据服务,请拨打400 或直接添加客服微信,再祝大家龙年,心想事成。
关注我们 新浪 腾讯

ArcGIS Engine 10 开发手册(4-7)删除要素类

ArcGIS Engine 10 开发手册(4-7)删除要素类
要想删除一个要素类,那么必须先得到这个要素类,在得到这个要素类的时候,我们要学习一个新的接口IFeatureWorkspace。

     要想删除一个要素类,那么必须先得到这个要素类,在得到这个要素类的时候,我们要学习一个新的接口IFeatureWorkspace


     IFeatureWorkspace 接口介绍

     这个接口主要是用于管理基于矢量数据的,如表,要素类,要素数据集等。他的主要方法和属性如下

 

 

 

      上图方法中的 OpenDataset OpenTable OpenFeatureClass 都是要传入一个相应的名称,如要打开一个名称为 PointTest 的要素类,只需要在 OpenFeatureClass 中传入这个要素类的名称,代码如下:

 

IWorkspaceFactory pWsFt = new AccessWorkspaceFactoryClass ();

IWorkspace pWs = pWsFt.OpenFromFile (WsName 0);

IFeatureWorkspace pFWs = pWs as IFeatureWorkspace;

IFeatureClass pFClass = pFWs.OpenFeatureClass ("PointTest");

     如果是在 ArcMap 中,我们会切换到 Catalog 中然后进入相应的数据库,然后删除相应的要素类,这种操作会让我们想到 FeatureClas 这个对象会提供删除的方法,其实不然,这个删除的方法是定义在 Dataset 这个对象中。

 

private void button1_Click (object sender, EventArgs e)

{

  string WsName = WsPath ();

  if (WsName != "")

  {

    IWorkspaceFactory pWsFt = new AccessWorkspaceFactoryClass ();

    IWorkspace pWs = pWsFt.OpenFromFile (WsName, 0);

    IFeatureWorkspace pFWs = pWs as IFeatureWorkspace;

    IFeatureClass pFClass = pFWs.OpenFeatureClass ("PointTest");

    IDataset pDatset = pFClass as IDataset;

    pDatset.Delete ();

  }

}

      运行结果

      删除前:

 

 

 

       删除后:

 

      京ICP备08100627号-22 京公网安备 11010802030428号