AE 开发添加新增字段 报错

在为现有要素类新增字段时,有可能会爆出该表正被其余程序或其余人使用,这时咱们就会添加失败,解决办法以下:it

在新增字段以前,先修改SchemaLock的状态table

ISchemaLock pSchemaLock = m_pOriginFeatureClass as ISchemaLock;
pSchemaLock.ChangeSchemaLock(esriSchemaLock.esriExclusiveSchemaLock);程序

而后再新增字段tab

//Add New Field
int nIndexOfGBTYPE = m_pOriginFeatureClass.Fields.FindField("GB_TYPE");
if (nIndexOfGBTYPE == -1)
{
IField pField = new FieldClass();
IFieldEdit pFieldEdit = pField as IFieldEdit;
pFieldEdit.Name_2 = "GB_TYPE";
pFieldEdit.Type_2 = esriFieldType.esriFieldTypeString;
pFieldEdit.IsNullable_2 = true;
pFieldEdit.AliasName_2 = "GB_TYPE";
pFieldEdit.DefaultValue_2 = "";
pFieldEdit.Editable_2 = true;
pFieldEdit.Length_2 = 100;

m_pOriginFeatureClass.AddField(pField);
}di

//最后进行恢复处理new

pSchemaLock.ChangeSchemaLock(esriSchemaLock.esriExclusiveSchemaLock);ab

相关文章
相关标签/搜索