ArcGIS Pro 3.4 API Reference Guide
ArcGIS.Desktop.Editing Namespace / EditOperation Class / Merge Method / Merge(EditingRowTemplate,Layer,IEnumerable<Int64>) Method
The template to create the new merged feature with.
The layer of the source features to merge.
The oids of the source features to merge.
Example

In This Topic
    Merge(EditingRowTemplate,Layer,IEnumerable<Int64>) Method
    In This Topic
    Merge features into a new feature defined by a feature template.
    Syntax

    Parameters

    template
    The template to create the new merged feature with.
    sourceLayer
    The layer of the source features to merge.
    sourceOIDs
    The oids of the source features to merge.
    Exceptions
    ExceptionDescription
    Template, sourceLayer, sourceOIDs cannot be null. List of ObjectIDs cannot be empty
    Remarks
    The template can be in a different layer from the source.
    Example
    Edit Operation Merge Features
    var mergeFeatures = new EditOperation() { Name = "Merge Features" };
    
    //Merge three features into a new feature using defaults
    //defined in the current template
    //At 2.x -
    //mergeFeatures.Merge(this.CurrentTemplate as EditingFeatureTemplate, featureLayer, new List<long>() { 10, 96, 12 });
    mergeFeatures.Merge(this.CurrentTemplate as EditingRowTemplate, featureLayer, new List<long>() { 10, 96, 12 });
    
    //Merge three features into a new feature in the destination layer
    mergeFeatures.Merge(destinationLayer, featureLayer, new List<long>() { 10, 96, 12 });
    
    //Use an inspector to set the new attributes of the merged feature
    var inspector = new Inspector();
    inspector.Load(featureLayer, oid);//base attributes on an existing feature
    //change attributes for the new feature
    inspector["NAME"] = "New name";
    inspector["DESCRIPTION"] = "New description";
    
    //Merge features into a new feature in the same layer using the
    //defaults set in the inspector
    mergeFeatures.Merge(featureLayer, new List<long>() { 10, 96, 12 }, inspector);
    
    //Execute to execute the operation
    //Must be called within QueuedTask.Run
    if (!mergeFeatures.IsEmpty)
    {
      var result = mergeFeatures.Execute(); //Execute and ExecuteAsync will return true if the operation was successful and false if not
    }
    
    //or use async flavor
    //await mergeFeatures.ExecuteAsync();
    
    Requirements

    Target Platforms: Windows 11, Windows 10

    ArcGIS Pro version: 3 or higher.
    See Also