获得要素图层的属性表

/// <summary>
/// 获得要素图层的属性表
/// </summary>
/// <param name="pFeatureLayer">要素图层对象</param>
/// <returns>数据表对象</returns>
public static DataTable GetDataTableFromFeatureLayer(IFeatureLayer pFeatureLayer)
{
if (pFeatureLayer == null)
{
return new DataTable();
}
IFields pFields = new Fields();
pFields = pFeatureLayer.FeatureClass.Fields;
DataTable pDataTable = new DataTable();
for (int i = 0; i < pFields.FieldCount; i++) //获得字段名
{
string fldName;
fldName = pFields.get_Field(i).AliasName;
pDataTable.Columns.Add(fldName);
}
IFeatureCursor pFeatureCursor;
pFeatureCursor = pFeatureLayer.FeatureClass.Search(null, false);
IFeature pFeature;
pFeature = pFeatureCursor.NextFeature();
while (pFeature != null)
{
string fldValue = null;
DataRow dr = pDataTable.NewRow();
for (int i = 0; i < pFields.FieldCount; i++)
{
string fldName;
fldName = pFields.get_Field(i).Name;
if (fldName == "Shape")
{
fldValue = Convert.ToString(pFeature.Shape.GeometryType);
}
else
{
fldValue = Convert.ToString(pFeature.get_Value(i));
}
dr[i] = fldValue;
}
pDataTable.Rows.Add(dr);
pFeature = pFeatureCursor.NextFeature();
}
return pDataTable;
}

posted @   南山种豆8  阅读(30)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」
点击右上角即可分享
微信分享提示