Select to view content in your preferred language

EditOperation's callback is not executed for SDE dataset

1140
3
07-04-2017 12:31 AM
MaxMax2
Frequent Contributor

I have following code:

var operation = new EditOperation
{
    Name = "Test edit operation",
    ShowModalMessageAfterFailure = false,
    EditOperationType = EditOperationType.Long,
    CancelMessage = null,
    ProgressMessage = null,
    ShowProgressor = false
};

operation.Callback(context =>
{
    // I never get here if fc is a feature class from SDE database
},
fc);

operation.Execute();‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

If fc is a feature class from SDE database I never fall to callback's body. If feature class is from FGDB all is OK. What am I doing wrong?

I'm taking a feature class from Geodatabase returned by GDBProjectItem.GetDatastore.

Tags (2)
0 Kudos
3 Replies
JeffMatson
Frequent Contributor

I'm assuming your SDE feature class is listed as "editable" in the List by Editing tab?  Are you hydrating the fc variable from a map layer or from a geodatabase object?

0 Kudos
MaxMax2
Frequent Contributor

I've updated my question. I'm taking a feature class from Geodatabase returned by GDBProjectItem.GetDatastore. So this feature class is not added to map and I can't see it on List by Editing tab.

0 Kudos
JeffMatson
Frequent Contributor

Sorry, I haven't messed with the Datastore object yet.  

This works for an SDE layer that isn't in the map:

Geodatabase geodatabase = new Geodatabase(new DatabaseConnectionFile(new Uri(" [full path to connection file] ")));
var fc = geodatabase.OpenDataset<FeatureClass>(" [featureClass name] ") as FeatureClass;
0 Kudos