Freigeben über


GraphNode.FindRelatedNodes-Methode

Sucht die dgml Knoten, das das acceptNode Prädikat entspricht und auf eine Weise verknüpft, die die traverseLink und traverseNode Prädikate übereinstimmt.

Sie gefunden werden, indem einer Breitensuche entlang den Links wird, die das traverseLink Prädikat, in der Quell- oder Zielrichtung übereinstimmen, die von den searchDirection Parameter festgelegt wird. Anschließend, wenn der Knoten das traverseNode Prädikat entspricht, hält er, durch diesen Knoten zu suchen recurrsively in derselben Richtung und gibt alle Knoten zurück, die das acceptNode Prädikat entsprechen. Die Suche kann Zirkularität im Diagramm behandeln.

Namespace:  Microsoft.VisualStudio.GraphModel
Assembly:  Microsoft.VisualStudio.GraphModel (in Microsoft.VisualStudio.GraphModel.dll)

Syntax

'Declaration
Public Function FindRelatedNodes ( _
    searchDirection As GraphSearchDirection, _
    traverseLink As Predicate(Of GraphLink), _
    traverseNode As Predicate(Of GraphNode), _
    acceptNode As Predicate(Of GraphNode) _
) As IEnumerable(Of GraphNode)
public IEnumerable<GraphNode> FindRelatedNodes(
    GraphSearchDirection searchDirection,
    Predicate<GraphLink> traverseLink,
    Predicate<GraphNode> traverseNode,
    Predicate<GraphNode> acceptNode
)
public:
IEnumerable<GraphNode^>^ FindRelatedNodes(
    GraphSearchDirection searchDirection, 
    Predicate<GraphLink^>^ traverseLink, 
    Predicate<GraphNode^>^ traverseNode, 
    Predicate<GraphNode^>^ acceptNode
)
member FindRelatedNodes : 
        searchDirection:GraphSearchDirection * 
        traverseLink:Predicate<GraphLink> * 
        traverseNode:Predicate<GraphNode> * 
        acceptNode:Predicate<GraphNode> -> IEnumerable<GraphNode> 
public function FindRelatedNodes(
    searchDirection : GraphSearchDirection, 
    traverseLink : Predicate<GraphLink>, 
    traverseNode : Predicate<GraphNode>, 
    acceptNode : Predicate<GraphNode>
) : IEnumerable<GraphNode>

Parameter

  • traverseLink
    Typ: Predicate<GraphLink>

    Eine dem Steuerlinkdurchlaufverhalten Prädikatfunktion, Übergabennull, wenn Sie alle Links durchlaufen möchten

  • traverseNode
    Typ: Predicate<GraphNode>

    Ein Prädikat, das Knotendurchlaufverhaltens, Übergabennull zu steuern, wenn Sie alle erreichbaren Knoten durchlaufen möchten

  • acceptNode
    Typ: Predicate<GraphNode>

    Ein zu steuern Prädikat, wenn ein Knoten in der Suche eingeschlossen werden soll oder nicht, Übergabennull, wenn Sie alle Knoten akzeptieren möchten

Rückgabewert

Typ: IEnumerable<GraphNode>
Ein Iterator über den Knoten, der gefunden wurden, gab ausführlicher erster Reihenfolge, einem leeren Iterator andernfalls zurück

Hinweise

Alle folgenden Beispielssuchen durch alle Knoten, die über erreichbar sind, verknüpft Knoten vom Start und gibt alle Knoten zurück, die die Methodenkategorie haben: start.FindRelatedNodes (GraphSearchDirection.Target, L => true, n-=> true, n-=> HasCategory (MethodCategory);

.NET Framework-Sicherheit

Siehe auch

Referenz

GraphNode Klasse

Microsoft.VisualStudio.GraphModel-Namespace