ArcGIS Pro 3.2 API Reference Guide
ArcGIS.Desktop.Editing Namespace / EditOperation Class / Create Method / Create(AssociationDescription) Method
A description of the association to create.
Example

In This Topic
    Create(AssociationDescription) Method
    In This Topic
    Creates a utility network association.
    Syntax

    Parameters

    associationDescription
    A description of the association to create.
    Example
    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.IsEmpty)
      {
        if (duplicateFeatures.Execute())//Execute and ExecuteAsync will return true if the operation was successful and false if not
        {
          var modifyOp = duplicateFeatures.CreateChainedOperation();
          modifyOp.Modify(featureLayer, (long)rtoken.ObjectID, GeometryEngine.Instance.Move(geom, 500.0, 500.0));
          if (!modifyOp.IsEmpty)
          {
            var result = modifyOp.Execute();
          }
        }
      }
    }
    
    Create a utility network association
    // Create edit operation
    EditOperation editOperation = new EditOperation();
    editOperation.Name = "Create structural attachment association";
    
    // Create a RowHandle for the pole
    
    Element poleElement = utilityNetwork.CreateElement(poleAssetType, poleGlobalID);
    RowHandle poleRowHandle = new RowHandle(poleElement, utilityNetwork);
    
    // Create a RowHandle for the transformer bank
    
    Element transformerBankElement = utilityNetwork.CreateElement(transformerBankAssetType, transformerBankGlobalID);
    RowHandle transformerBankRowHandle = new RowHandle(transformerBankElement, utilityNetwork);
    
    // Attach the transformer bank to the pole
    
    AssociationDescription structuralAttachmentAssociationDescription = new AssociationDescription(AssociationType.Attachment, poleRowHandle, transformerBankRowHandle);
    editOperation.Create(structuralAttachmentAssociationDescription);
    editOperation.Execute();
    
    Requirements

    Target Platforms: Windows 11, Windows 10

    ArcGIS Pro version: 3 or higher.
    See Also