public enum TraversalDirection : System.Enum, System.IComparable, System.IConvertible, System.IFormattable
Public Enum TraversalDirection Inherits System.Enum Implements System.IComparable, System.IConvertible, System.IFormattable
public enum TraversalDirection : System.Enum, System.IComparable, System.IConvertible, System.IFormattable
Public Enum TraversalDirection Inherits System.Enum Implements System.IComparable, System.IConvertible, System.IFormattable
Member | Description |
---|---|
Ascending | Traversal will be performed in the ascending direction. |
Descending | Traversal will be performed in the descending direction. |
public static void GetTraverseAssociationsResultFromDownwardTraversal(UtilityNetwork utilityNetwork, IReadOnlyList<Element> startingElements) { // Set downward traversal with maximum depth TraverseAssociationsDescription traverseAssociationsDescription = new TraverseAssociationsDescription(TraversalDirection.Descending); // Get traverse associations result from the staring element up to maximum depth TraverseAssociationsResult traverseAssociationsResult = utilityNetwork.TraverseAssociations(startingElements, traverseAssociationsDescription); // Get associations participated in traversal IReadOnlyList<Association> associations = traverseAssociationsResult.Associations; }
public static void GetTraverseAssociationsResultFromUpwardTraversalWithDepthLimit(UtilityNetwork utilityNetwork, IReadOnlyList<Element> startingElements) { // List of fields whose values will be fetched as name-values pairs during association traversal operation List<string> additionalFieldsToFetch = new List<string> { "ObjectId", "AssetName", "AssetGroup", "AssetType" }; // Set downward traversal with maximum depth level of 3 TraverseAssociationsDescription traverseAssociationsDescription = new TraverseAssociationsDescription(TraversalDirection.Ascending, 3) { AdditionalFields = additionalFieldsToFetch }; // Get traverse associations result from the staring element up to depth level 3 TraverseAssociationsResult traverseAssociationsResult = utilityNetwork.TraverseAssociations(startingElements, traverseAssociationsDescription); // List of associations participated in traversal IReadOnlyList<Association> associations = traverseAssociationsResult.Associations; // KeyValue mapping between involved elements and their field name-values //At 2.x - IReadOnlyDictionary<Element, IReadOnlyList<AssociationElementFieldValue>> associationElementValuePairs = traverseAssociationsResult.AdditionalFieldValues; IReadOnlyDictionary<Element, IReadOnlyList<FieldValue>> associationElementValuePairs = traverseAssociationsResult.AdditionalFieldValues; foreach (KeyValuePair<Element, IReadOnlyList<FieldValue>> keyValuePair in associationElementValuePairs) { // Element Element element = keyValuePair.Key; // List of field names and their values //At 2.x - IReadOnlyList<AssociationElementFieldValue> elementFieldValues = keyValuePair.Value; IReadOnlyList<FieldValue> elementFieldValues = keyValuePair.Value; } }
System.Object
System.ValueType
System.Enum
ArcGIS.Core.Data.UtilityNetwork.TraversalDirection
Target Platforms: Windows 11, Windows 10