if (pLyr is IFeatureLayer)
{
DataTable pTable = new DataTable();
IFeatureLayer pFealyr = pLyr as IFeatureLayer;
IFeatureClass pFCls = pFealyr.FeatureClass;
string shape = "";
if (pFCls.ShapeType == esriGeometryType.esriGeometryPoint)
shape = "Point";
else if (pFCls.ShapeType == esriGeometryType.esriGeometryPolyline)
shape = "Polyline";
else if (pFCls.ShapeType == esriGeometryType.esriGeometryPolygon)
shape = "Polygon";
for (int i = 0; i < pFCls.Fields.FieldCount; i++)
{
pTable.Columns.Add(pFCls.Fields.get_Field(i).Name);
}
IFeatureCursor pCursor = pFCls.Search(null, false);
int ishape = pFCls.Fields.FindField("Shape");
IFeature pFea = pCursor.NextFeature();
while (pFea != null)
{
DataRow pRow = pTable.NewRow();
for (int i = 0; i < pFCls.Fields.FieldCount; i++)
{
if (i == ishape)
{
pRow[i] = shape;
continue;
}