Class is not licensed for use (Exception from HRESULT: 0x80040112)

2064
1
02-21-2018 05:04 AM
שלומיאקונס
New Contributor

I have layer (feature class) in ArcGIS. The data is on Oracle 11g.

I try to update a field in a row but when I do feature.store I get an error

"Class is not licensed for use (Exception from HRESULT: 0x80040112)"

The code I use:

private void UpdateFeatures(IFeatureClass featureClass, IFeatureWorkspace featureWorkspace, List<FeatureValue> featureValues)    {        IFeatureCursor featureSearchCursor = null;        IWorkspaceEdit workspaceEdit = null;        try        {            workspaceEdit = (IWorkspaceEdit)featureWorkspace;            workspaceEdit.StartEditing(false);             // Start an edit operation and create a cursor.            workspaceEdit.StartEditOperation();             //IQueryFilter queryFilter = new QueryFilter();            //queryFilter.WhereClause = "Code = '" + featureValues.FieldName + "'";            //queryFilter.SubFields = "COMMENTS";             featureSearchCursor = featureClass.Search(null, false);            int fieldCodeIndex = featureClass.FindField("CODE");            int fieldIndex = featureClass.FindField("MODEL");             bool FieldEditable = featureWorkspace.OpenTable("Switch").Fields.get_Field(fieldIndex).Editable;             // Iterate through the features, updating the Type values.             IFeature feature = null;             while ((feature = featureSearchCursor.NextFeature()) != null)            {                object obj = feature.get_Value(fieldCodeIndex);                if (!(obj is DBNull))                {                    FeatureValue featureValue = featureValues.Where(x => x.FieldName == obj.ToString()).FirstOrDefault<FeatureValue>();                    if (featureValue != null)                    {                        int val = featureValue.FieldValue;                    }                    object obj1 = "123";                    feature.set_Value(fieldIndex,obj1);                    feature.Store();                    break;                }                 //Console.WriteLine("The new type: {0}", feature.get_Value(fieldIndex));            }        }        catch (COMException ex)        {            // Handle any errors that might occur on NextFeature().            richTextBox1.AppendText(ex.Message);        }        catch (Exception ex)        {            //handle general Errors            richTextBox1.AppendText(ex.Message);        }        finally        {            workspaceEdit.StopEditOperation();            // Stop the edit session.            workspaceEdit.StopEditing(true);            // Stop the edit operation.             // Since the edit operation is ending, release the cursor.            Marshal.ReleaseComObject(featureSearchCursor);        }    }
Tags (1)
0 Kudos
1 Reply
XanderBakker
Esri Esteemed Contributor

What license level are you using? Normally to make edits in a EGDB you need a Standard license for Desktop.