using System; using System.Collections.Generic; using System.Text; using GeoScene.Globe; using GeoScene.Engine; using GeoScene.Data; namespace Cyberpipe { class getpipeLineFields { public static string getFields(string caption, GSOGlobeControl m_globeControl) { GSODataset ds; GSOFeatureDataset sourcefDataset; GSOLayer m_layer = m_globeControl.Globe.Layers.GetLayerByCaption(caption);//获取当前选择的layer图层 if (m_layer == null) return ""; GSOFeatureLayer flayer = m_layer as GSOFeatureLayer; ds = m_layer.Dataset as GSODataset; sourcefDataset = ds as GSOFeatureDataset; sourcefDataset.Open(); string fields = ""; for (int j = 0; j < sourcefDataset.FieldCount; j++) { GSOFieldAttr fieldef = sourcefDataset.GetField(j); if (j < sourcefDataset.FieldCount - 1) { fields += fieldef.Name + ","; } else fields += fieldef.Name; } return fields; } } }