Partager via


ElementWalker.ShouldVisitLinkAgain, méthode

True si le lien a été visité avant que le currentElement (un de ses roleplayers) ait été visité.

Espace de noms :  Microsoft.VisualStudio.Modeling
Assembly :  Microsoft.VisualStudio.Modeling.Sdk.11.0 (dans Microsoft.VisualStudio.Modeling.Sdk.11.0.dll)

Syntaxe

'Déclaration
Protected Function ShouldVisitLinkAgain ( _
    link As ElementLink, _
    currentElement As ModelElement _
) As Boolean
protected bool ShouldVisitLinkAgain(
    ElementLink link,
    ModelElement currentElement
)

Paramètres

Valeur de retour

Type : System.Boolean

Notes

Lorsque regardant les éléments associés du currentElement donné, si nous recherchons un lien mis en file d'attente pour visiter, cette fonction indique si elle doit être visitée de nouveau.Si c'est le lien a été visité avant que le currentElement (un de ses roleplayers) ait été visité.Pour les marcheurs de fermeture, nous garantissons que le lien sera visité uniquement après que les roleplayers sont visités (techniquement, nous garantissons que l'InternalElementList contiendra le lien après les roleplayers).Considérez ce scénario : Nous avons l'élément A qui est un roleplayer pour 2 relations AHasBs et CHasAs.Pendant le parcours de fermeture, Un est d'abord approché de B via AHasBs.Toutefois, il n'a pas l'appui- suppression appui-suppression sur celui-ci, ce qui n'est pas visité mais l'AHasBs est visité.Plus loin dans le parcours, Un est approché de C via CHasAs.Cette fois, Un est visité car il a l'appui- suppression appui-suppression.Maintenant nous obtenons un cas où AHasBs a été visité avant qu'un de ses roleplayers (a) ait été visité.Pour résoudre ce problème, si les marcheurs trouvent qu'un lien a été visité (ou plutôt, mis en file d'attente pour visiter), il doit s'activer s'il est visité de nouveau contrôle (s'il était déjà visité avant currentElement).Si tel est le cas, il doit supprimer le lien de l'InternalElementList à l'aide de les méthodes MarkForRemovalFromInternalElementList et RemoveMarkedElements, et l'ajoute à la file d'attente à visiter de nouveau.

Sécurité .NET Framework

Voir aussi

Référence

ElementWalker Classe

Microsoft.VisualStudio.Modeling, espace de noms