获取地理数据库DataSet下的Feature Class的名称

如图,想获取ChinaBaseData下Feature Class 的名字,(House和Lake)非别名,

IWorkspaceFactory2 pWorkspaceFact = new SdeWorkspaceFactoryClass();
IWorkspace pWorkspace = pWorkspaceFact.Open(pPropertySet, 0);
IFeatureWorkspace pFeatureWorkspace = (IFeatureWorkspace)pWorkspace;
IEnumDataset pEnumDatasets = pWorkspace.get_Datasets(esriDatasetType.esriDTFeatureDataset);
             pEnumDatasets.Reset();
IDataset pDataset = pEnumDatasets.Next();
IFeatureClassContainer pFeatureclassContainer;
IFeatureClass pFeatureClass;

 

while (pDataset != null)
{
 if (pDataset.Name.Contains(m_con_strGWDatasetName))
 {
   m_lstStrFCNames.Clear();
   pFeatureclassContainer = pDataset as IFeatureClassContainer;
   IDataset pDs = null;
   for (int i = 0; i < pFeatureclassContainer.ClassCount; i++)
   {
     pFeatureClass = pFeatureclassContainer.get_Class(i);
               pDs = (IDataset)pFeatureClass;                                
     if (!m_lstStrFCNames.Contains(pDs.BrowseName))
         m_lstStrFCNames.Add(pDs.BrowseName);
   }
   break;
  }
 pDataset = pEnumDatasets.Next();
}

 

posted @ 2014-12-29 15:04  5IGIS  阅读(348)  评论(0编辑  收藏  举报