Executes the Edit, modifying the database using the instructions given to the EditOperation. Returns true upon success and
false upon failure.
Return Value
A task representing the EditOperation that will result in a success or failure.
Edit Operation - check for actions before Execute
// Some times when using EditOperation.Modify you can unknowingly be attempting to set
// an attribute to value
// setting
// In this scenario the Modify action will detect that nothing is required
// and do nothing. Because no actions have occurred, the
// Consequently the Execute operation will fail.
if (!opEdit.IsEmpty)
opEdit.Execute();
Edit Operation Create Features
var createFeatures = new EditOperation() { Name = "Create Features" };
//Create a feature with a polygon
var token = createFeatures.Create(featureLayer, polygon);
if (createFeatures.IsSucceeded)
{
// token.ObjectID wll be populated with the objectID of the created feature after Execute has been successful
}
//Do a create features and set attributes
var attributes = new Dictionary<string, object>();
attributes.Add("SHAPE", polygon);
attributes.Add("NAME", "Corner Market");
attributes.Add("SIZE", 1200.5);
attributes.Add("DESCRIPTION", "Corner Market");
createFeatures.Create(featureLayer, attributes);
//Create features using the current template
//Must be within a MapTool
createFeatures.Create(this.CurrentTemplate, polygon);
//Execute to execute the operation
//Must be called within QueuedTask.Run
if (!createFeatures.IsEmpty)
{
createFeatures.Execute(); //Execute will return true if the operation was successful and false if not.
}
//or use async flavor
//await createFeatures.ExecuteAsync();
Target Platforms: Windows 11, Windows 10
ArcGIS Pro version: 3 or higher.