NavigationPair
Namespace: Meshmakers.Octo.Runtime.Contracts.Repositories
Pair of rt association roles id and direction.
public record NavigationPair : FieldFilterCriteria, IEquatable<FieldFilterCriteria>, IEquatable<NavigationPair>
Inheritance Object → FieldFilterCriteria → NavigationPair
Implements IEquatable<FieldFilterCriteria>, IEquatable<NavigationPair>
Properties
InnerNavigationPairs
Gets the navigation pairs used to further traverse the object graph.
public List<NavigationPair> InnerNavigationPairs { get; }
Property Value
CkRoleId
Gets the association role id.
public CkId<CkAssociationRoleId> CkRoleId { get; }
Property Value
CkId<CkAssociationRoleId>
Direction
Gets the direction of the association.
public GraphDirections Direction { get; }
Property Value
GraphDirections
TargetCkTypeId
Gets the target construction kit type id.
public CkId<CkTypeId> TargetCkTypeId { get; }
Property Value
CkId<CkTypeId>
PathTerms
Gets the path terms to the navigation pair.
public IEnumerable<PathTerm> PathTerms { get; }
Property Value
SubPathTerms
Gets the sub path terms of the navigation pair. This property lists all sub paths of the navigation pair. The sub path terms are used to
public IEnumerable<IEnumerable<PathTerm>> SubPathTerms { get; private set; }
Property Value
IEnumerable<IEnumerable<PathTerm>>
FieldFilters
Represents field filters for specific attributes with different comparison operators.
public ICollection<FieldFilter> FieldFilters { get; }
Property Value
Constructors
NavigationPair(IEnumerable<PathTerm>, IEnumerable<IEnumerable<PathTerm>>, CkId<CkAssociationRoleId>, GraphDirections, CkId<CkTypeId>)
Creates a new NavigationPair from the given , , and .
public NavigationPair(IEnumerable<PathTerm> pathTerms, IEnumerable<IEnumerable<PathTerm>> subPathTerms, CkId<CkAssociationRoleId> ckRoleId, GraphDirections direction, CkId<CkTypeId> targetCkTypeId)
Parameters
pathTerms
IEnumerable<PathTerm>
Path terms to the navigation pair
subPathTerms
IEnumerable<IEnumerable<PathTerm>>
Sub path terms to the navigation pair
ckRoleId
CkId<CkAssociationRoleId>
Association role id
direction
GraphDirections
Direction of the association
targetCkTypeId
CkId<CkTypeId>
Target construction kit type id
NavigationPair(IEnumerable<PathTerm>, IEnumerable<IEnumerable<PathTerm>>, CkId<CkAssociationRoleId>, GraphDirections, CkId<CkTypeId>, IEnumerable<NavigationPair>)
Creates a new NavigationPair from the given , , and .
public NavigationPair(IEnumerable<PathTerm> pathTerms, IEnumerable<IEnumerable<PathTerm>> subPathTerms, CkId<CkAssociationRoleId> ckRoleId, GraphDirections direction, CkId<CkTypeId> targetCkTypeId, IEnumerable<NavigationPair> innerNavigationPairs)
Parameters
pathTerms
IEnumerable<PathTerm>
Path terms to the navigation pair
subPathTerms
IEnumerable<IEnumerable<PathTerm>>
Sub path terms to the navigation pair
ckRoleId
CkId<CkAssociationRoleId>
Association role id
direction
GraphDirections
Direction of the association
targetCkTypeId
CkId<CkTypeId>
Target construction kit type id
innerNavigationPairs
IEnumerable<NavigationPair>
Navigation pairs used to further traverse the object graph
Methods
Merge(NavigationPair)
Merges the given navigation pair into this one by adding the inner navigation pairs of the other navigation pair to this one.
public void Merge(NavigationPair other)
Parameters
other
NavigationPair
The other navigation pair to merge