AE+C#把資料寫入GDB資料庫裡出現 “對COM元件的呼叫返回了錯誤 HRESULTE_FAIL”
阿新 • • 發佈:2018-12-31
public void CreateFeatureClass_Terrain_Info(IFeatureWorkspace IFW)
{
IFeatureClass tempFeatureClass = IFW.OpenFeatureClass(StringDBName_Terrain_Info);
//設定名稱 (寫入資料庫的資料)
pField = new FieldClass();
pField.Name_2 = "Name";
pField.AliasName_2 = "名稱" ;
pField.Type_2 = esriFieldType.esriFieldTypeString;
pField.Length_2 = 15;
pFieldsEdit.AddField(pField);
...... //寫入資料庫的更多資料
IFW.CreateFeatureClass(StringDBName_Terrain_Info, pFieldsEdit, null, null, esriFeatureType.esriFTSimple, "Shape", "");
}
出現了”對COM元件的呼叫返回了錯誤 HRESULTE_FAIL”錯誤
解決方法如下:
由於我呼叫的是Open方法,GDB資料庫沒有建立的情況下,無法Open(開啟)Terrain_Info表。
所以需要把這行註釋掉,
IFeatureClass tempFeatureClass = IFW.OpenFeatureClass(StringDBName_Terrain_Info);
就能直接建立Terrain_Info 的 CreateFeatureClass。
邏輯:先建立→再開啟