ArcGIS Pro 3.0 API Reference Guide
ArcGIS.Desktop.Editing Namespace / EditOperation Class / Create Method / Create(MapMember,Dictionary<String,Object>) Method
The layer or standalone table to create the new row in.
The attributes to assign to the new row.

In This Topic
    Create(MapMember,Dictionary<String,Object>) Method
    In This Topic
    Creates a new row with the given attributes.


    The layer or standalone table to create the new row in.
    The attributes to assign to the new row.

    Return Value

    A RowToken object that represents the row to be created.
    Edit Operation Create Features
    var createFeatures = new EditOperation();
    createFeatures.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
    //or use async flavor
    //await createFeatures.ExecuteAsync();
    Create feature from a modified inspector
    var insp = new ArcGIS.Desktop.Editing.Attributes.Inspector();
    insp.Load(layer, 86);
    ArcGIS.Desktop.Framework.Threading.Tasks.QueuedTask.Run(() =>
      // modify attributes if necessary
      // insp["Field1"] = newValue;
      //Create new feature from an existing inspector (copying the feature)
      var createOp = new ArcGIS.Desktop.Editing.EditOperation();
      createOp.Name = "Create from insp";
      createOp.Create(insp.MapMember, insp.ToDictionary(a => a.FieldName, a => a.CurrentValue));
    Create features from a CSV file
    //Run on MCT
    ArcGIS.Desktop.Framework.Threading.Tasks.QueuedTask.Run(() =>
      //Create the edit operation
      var createOperation = new ArcGIS.Desktop.Editing.EditOperation();
      createOperation.Name = "Generate points";
      createOperation.SelectNewFeatures = false;
      // determine the shape field name - it may not be 'Shape' 
      string shapeField = layer.GetFeatureClass().GetDefinition().GetShapeField();
      //Loop through csv data
      foreach (var item in csvData)
        //Create the point geometry
        ArcGIS.Core.Geometry.MapPoint newMapPoint =
            ArcGIS.Core.Geometry.MapPointBuilderEx.CreateMapPoint(item.X, item.Y);
        // include the attributes via a dictionary
        var atts = new Dictionary<string, object>();
        atts.Add("StopOrder", item.StopOrder);
        atts.Add("FacilityID", item.FacilityID);
        atts.Add(shapeField, newMapPoint);
        // queue feature creation
        createOperation.Create(layer, atts);
      // execute the edit (feature creation) operation
      return createOperation.Execute();
    Edit Operation Duplicate Features
      var duplicateFeatures = new EditOperation();
      duplicateFeatures.Name = "Duplicate Features";
      //Duplicate with an X and Y offset of 500 map units
      //At 2.x duplicateFeatures.Duplicate(featureLayer, oid, 500.0, 500.0, 0.0);
      //Execute to execute the operation
      //Must be called within QueuedTask.Run
      var insp2 = new Inspector();
      insp2.Load(featureLayer, oid);
      var geom = insp2["SHAPE"] as Geometry;
      var rtoken = duplicateFeatures.Create(insp2.MapMember, insp2.ToDictionary(a => a.FieldName, a => a.CurrentValue));
      if (duplicateFeatures.Execute())
        var modifyOp = duplicateFeatures.CreateChainedOperation();
        modifyOp.Modify(featureLayer, (long)rtoken.ObjectID, GeometryEngine.Instance.Move(geom, 500.0, 500.0));

    Target Platforms: Windows 11, Windows 10, Windows 8.1

    See Also