C# 使用AE獲取feature的屬性及字段操作

我就廢話不多說瞭,大傢還是直接看代碼吧~

public static DataTable GetFeatureDataTable(IFeature pFeature)
    {
      DataTable dt = new DataTable();
      dt.Columns.Add("位置:");
      dt.Columns.Add("數據:");
      for (int i = 0; i < pFeature.Fields.FieldCount; i++)
      {
        DataRow dr = dt.NewRow();
        dr[0] = pFeature.Fields.Field[i].Name;
        dr[1] = pFeature.Value[i];
        dt.Rows.Add(dr);
      }
      return dt;
    }

補充:C#AE獲取要素圖層某個字段的唯一值

開始喔:

IFeatureLayer featureLayer=你要獲取唯一值的圖層
//存儲唯一值字段
List<string> myValueList = new List<string>();
#region//獲取唯一值字段
//數據統計
IDataStatistics dataStatistics = new DataStatisticsClass();
//設置統計字段
dataStatistics.Field = fieldName;
//獲取所有
dataStatistics.Cursor = (ICursor)featureLayer.FeatureClass.Search(null, false);
IEnumerator myEnumerator = dataStatistics.UniqueValues;
//獲取該字段的唯一值字段
myEnumerator.Reset();
while (myEnumerator.MoveNext())
{
     if (!myValueList.Contains(myEnumerator.Current.ToString()))
      {
           myValueList.Add(myEnumerator.Current.ToString());
      }
}
//指針釋放(用完釋放,養成良好習慣哈)
System.Runtime.InteropServices.Marshal.ReleaseComObject(dataStatistics);
#endregion

結束呦。

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。如有錯誤或未考慮完全的地方,望不吝賜教。

推薦閱讀: