具体步骤
(1)创建工厂,打开工作空间
(2)创建GeometryDef对象,设置GeometryDef属性,提供SHAPE字段
(3)新建一个字段Field
(4)设置几何字段
(5)添加ID默认字段
(6)产生唯一索引字段
具体代码如下:
private IFeatureClass CreateAccessFeatureClass(string strWorkspace, string strBrowseName, esriGPMessageType geomType)
{
//创建工厂,并且打开工作空间
IWorkspaceFactory pWSF = new AccessWorkspaceFactoryClass();
IWorkspace pWS = pWSF.OpenFromFile(strWorkspace, 0);
IFeatureWorkspace pFWS = pWS as IFeatureWorkspace;
//创建GeometryDef对象,设置几何属性
IGeometryDef pGeomDef = new GeometryDefClass();
pGeomDef.SpatialReference = new GeographicCoordinateSystemClass();
pGeomDef.GeometryType = geomType;
//新建字段
IField pField;
IFieldsEdit pFieldsEdit;
pFieldsEdit = new FieldsClass();
//设置几何字段,填写包括属性(GeometryDef,Type_2,Name_2)
pField = new FieldClass();
pField.GeometryDef = pGeomDef;
pField.Type_2 = esriFieldType.esriFieldTypeGeometry;
pField.Name_2 = "Shape";
pFieldsEdit.AddField();
//添加ID默认字段
pField = new FieldClass();
pField.Name_2 = "ID";
pField.Type_2 = esriFieldType.esriFieldTypeDouble;
pFieldsEdit.AddField(pField);
//添加唯一索引字段
pField = new FieldClass();
pField .Name_2="OBJECTID";
pField .Type_2=esriFieldType .esriFieldTypeOID;
pFieldsEdit.AddField (pField);
IFeatureClass pFeatureClass = pFWS.CreateFeatureClass(strBrowseName ,pFieldsEdit,null ,null ,esriFeatureType.esriFTSimple,"shape","");
return pFeatureClass;
}