DslDefinitionModelDeleteClosure Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Remover filtro de visitante de fechamento
public ref class DslDefinitionModelDeleteClosure : Microsoft::VisualStudio::Modeling::DslDefinition::DslDefinitionModelDeleteClosureBase, Microsoft::VisualStudio::Modeling::IElementVisitorFilter
[System.CLSCompliant(true)]
public class DslDefinitionModelDeleteClosure : Microsoft.VisualStudio.Modeling.DslDefinition.DslDefinitionModelDeleteClosureBase, Microsoft.VisualStudio.Modeling.IElementVisitorFilter
[<System.CLSCompliant(true)>]
type DslDefinitionModelDeleteClosure = class
inherit DslDefinitionModelDeleteClosureBase
interface IElementVisitorFilter
Public Class DslDefinitionModelDeleteClosure
Inherits DslDefinitionModelDeleteClosureBase
Implements IElementVisitorFilter
- Herança
- Atributos
- Implementações
Comentários
A classe está definida em.. \GeneratedCode\DomainModel.cs, que é gerado a partir do modelo de definição de DSL.
Construtores
| DslDefinitionModelDeleteClosure() |
Construtor |
Métodos
| ShouldVisitRelationship(ElementWalker, ModelElement, DomainRoleInfo, DomainRelationshipInfo, ElementLink) |
Chamado para perguntar ao filtro se uma relação específica de um elemento de origem deve ser incluída na passagem (Herdado de DslDefinitionModelDeleteClosureBase) |
| ShouldVisitRolePlayer(ElementWalker, ModelElement, ElementLink, DomainRoleInfo, ModelElement) |
Esse método é chamado para perguntar ao filtro se um determinado representante da função associado a um ElementLink deve ser visitado durante a passagem. Isso substitui o método ShouldVisitRolePlayer () gerado, que examina o atributo PropagateDelete no ElementLink para decidir se deseja visitar os jogadores de função associados. Nesse caso, o RelationshipPort, a forma desenhada como um pequeno quadrado em que uma relação está conectada a uma classe, não foi excluída com a relação. O motivo é que o link usado para conectar o RelationshipPort (uma forma) ao RoleConnector (também uma forma) é um subtipo de ElementLink chamado LinkConnectsToNode. Instâncias desse tipo de link são usadas para associar vários NodeShapes com LinkShapes e, portanto, não propagar exclusões, embora no caso do RelationshipPort deveria. O mesmo problema existia para InheritancePort, que como RelationshipPort estende TogglePort. Esse método é chamado para cada ElementLink visitado durante uma exclusão. Se o link em questão for uma instância de LinkConnectsToNode e roleplayer for um TogglePort, a forma de porta poderá não ser mais necessária. Ao verificar quantos links são deixados para o jogador da função de destino, esse método retorna VisitorFilterResult. Sim, se houver exatamente um link para a porta, VisitorFilterResult. DoNotCare. Isso garante que quando o último link para o nó for excluído, a forma de porta também será excluída. |