ArcGIS Pro 3.7 API Reference Guide
ArcGIS.Core.Data.UtilityNetwork.Telecom Namespace / CircuitManager Class / GetSubcircuitUserFields Method
Example

In This Topic
    GetSubcircuitUserFields Method
    In This Topic
    Gets the list of user fields from the subcircuit table. This method must be called on the MCT. Use QueuedTask.Run.
    Syntax
    Public Function GetSubcircuitUserFields() As IReadOnlyList(Of Field)
    public IReadOnlyList<Field> GetSubcircuitUserFields()

    Return Value

    The list of user fields.
    Exceptions
    ExceptionDescription
    A geodatabase-related exception has occurred.
    Example
    Create a physical circuit (non-sectioned) in the utility network with subcircuits
    await QueuedTask.Run(() =>
    {
      using (CircuitManager circuitManager = utilityNetwork.GetCircuitManager(telecomDomainNetwork))
      {
        // Create a non-sectioned circuit object
        Circuit circuit = new Circuit(circuitManager);
        circuit.SetName(circuitNames.First());
        circuit.SetSectioned(false);
        circuit.SetCircuitType(CircuitType.Physical);
    
        // Set a circuit user attribute
        IReadOnlyList<Field> circuitFields = circuitManager.GetCircuitUserFields();
        circuit[circuitFields.First().Name] = "My circuit description";
    
        // Add start and stop locations
        circuit.SetStartLocation(new CircuitLocation(startElement));
        circuit.SetStopLocation(new CircuitLocation(stopElement));
    
        Subcircuit subcircuit1 = new Subcircuit(circuitManager);
        subcircuit1.SetName("Subcircuit1");
    
        // Set a subcircuit user attribute
        IReadOnlyList<Field> subcircuitFields = circuitManager.GetSubcircuitUserFields();
        subcircuit1[subcircuitFields[0].Name] = "My subcircuit description";
    
        Subcircuit subcircuit2 = new Subcircuit(circuitManager);
        subcircuit2.SetName("Subcircuit2");
        subcircuit2.SetProviderID(new Guid("9B587BB4-FA30-4AC8-ACAC-4CB1BB087111")); // Example GUID 
    
        // Add subcircuits to the circuit
        circuit.SetSubcircuits(new List<Subcircuit> {
                      subcircuit1,
                      subcircuit2
            });
    
        // Create the circuit.
    
        circuitManager.Create(circuit);
    
      }
    
    });
    Requirements

    Target Platforms: Windows 11 Home, Pro, Enterprise (64 bit)

    ArcGIS Pro version: 3.7 or higher.
    See Also