Metodo DomainModel.CreateElementLink
Crea un collegamento dell'elemento di un tipo specificato.
Spazio dei nomi: Microsoft.VisualStudio.Modeling
Assembly: Microsoft.VisualStudio.Modeling.Sdk.12.0 (in Microsoft.VisualStudio.Modeling.Sdk.12.0.dll)
Sintassi
'Dichiarazione
Public Overridable Function CreateElementLink ( _
partition As Partition, _
elementLinkType As Type, _
roleAssignments As RoleAssignment(), _
propertyAssignments As PropertyAssignment() _
) As ElementLink
public virtual ElementLink CreateElementLink(
Partition partition,
Type elementLinkType,
RoleAssignment[] roleAssignments,
PropertyAssignment[] propertyAssignments
)
Parametri
- partition
Tipo: Microsoft.VisualStudio.Modeling.Partition
Partizione in cui il collegamento all'elemento deve essere creato.In genere, DefaultPartition.
- elementLinkType
Tipo: System.Type
Relazione di dominio non astratta definita nella definizione DSL.
- roleAssignments
Tipo: array<Microsoft.VisualStudio.Modeling.RoleAssignment[]
Matrice di assegnazioni dei ruoli delle relazioni per il nuovo collegamento dell'elemento.
- propertyAssignments
Tipo: array<Microsoft.VisualStudio.Modeling.PropertyAssignment[]
Se la relazione di dominio definisce le proprietà per le relative istanze, è possibile assegnare i relativi valori qui.
Valore restituito
Tipo: Microsoft.VisualStudio.Modeling.ElementLink
Oggetto ElementLink creato.
Note
Questo metodo di creare un collegamento è più appropriato per il codice generato che per la programmazione comune.
Negli esempi seguenti vengono utilizzati tipi definiti in un modello DSL generato dal modello minimo della soluzione del linguaggio.
Esempi
Per creare un collegamento utilizzando questo metodo:
ExampleElement element1, element2;
MyLanguageDomainModel dm = ...;
RoleAssignment sourceRole = new RoleAssignment(ExampleElementReferencesTargets.SourceDomainRoleId, element1);
RoleAssignment targetRole = new RoleAssignment(ExampleElementReferencesTargets.TargetDomainRoleId, element2);
ExampleElementReferencesTargets link1 =
dm.CreateElementLink(dm.Store.DefaultPartition,
typeof(ExampleElementReferencesTargets),
new RoleAssignment[] { sourceRole, targetRole},
null)
as ExampleElementReferencesTargets;
In questo esempio viene creato lo stesso collegamento più direttamente utilizzando la relazione di dominio:
ExampleElementReferencesTargets link = new
ExampleElementReferencesTargets(element1, element2);
Se la relazione di dominio definisce il ruolo delle proprietà nelle classi di associazione e se non si desidera che un riferimento al collegamento, quindi creare il collegamento utilizzando il ruolo delle proprietà. Nel modello DSL minimo di linguaggio, la relazione di ExampleElementReferencesTargets definisce le proprietà del ruolo Source e Target:
// Creates the link without returning a reference to it:
element1.Targets.Add(element2);
Sicurezza di .NET Framework
- Attendibilità totale per il chiamante immediato. Impossibile utilizzare questo membro in codice parzialmente attendibile. Per ulteriori informazioni, vedere Utilizzo di librerie da codice parzialmente attendibile.
Vedere anche
Riferimenti
Spazio dei nomi Microsoft.VisualStudio.Modeling