public IReadOnlyList<Association> Associations {get;}
Public ReadOnly Property Associations As IReadOnlyList(Of Association)
public IReadOnlyList<Association> Associations {get;}
Public ReadOnly Property Associations As IReadOnlyList(Of Association)
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; } }
Target Platforms: Windows 11, Windows 10