/// <summary>
/// 获取工作空间中所有图层要素
/// </summary>
/// <param name="pWorkspace">工作空间</param>
/// <returns></returns>
public static List<string> GetAllFeatureClasses(IWorkspace pWorkspace)
{
List<string> lisNames = new List<string>();
IFeatureWorkspace pFeatureWorkspace = pWorkspace as IFeatureWorkspace;
IEnumDatasetName pAnyEnumDatasetName = pWorkspace.DatasetNames[esriDatasetType.esriDTAny];
IDatasetName pAnyDatasetName = null;
while ((pAnyDatasetName = pAnyEnumDatasetName.Next()) != null)
{
switch (pAnyDatasetName.Type)
{
case esriDatasetType.esriDTFeatureClass:
lisNames.Add(pAnyDatasetName.Name);
break;
case esriDatasetType.esriDTFeatureDataset:
IEnumDatasetName pSubEnumDataset = pAnyDatasetName.SubsetNames;
IDatasetName pDatasetName = null;
while ((pDatasetName = pSubEnumDataset.Next()) != null)
{
lisNames.Add(pDatasetName.Name);
}
break;
}
}
return lisNames;
}
ArcGIS获取工作空间内所有图层或表格的名称
于 2022-05-31 18:08:01 首次发布