DomainModel.CreateElementLink, méthode
Crée un lien d'élément d'un type spécifié.
Espace de noms : Microsoft.VisualStudio.Modeling
Assembly : Microsoft.VisualStudio.Modeling.Sdk.11.0 (dans Microsoft.VisualStudio.Modeling.Sdk.11.0.dll)
Syntaxe
'Déclaration
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
)
Paramètres
- partition
Type : Microsoft.VisualStudio.Modeling.Partition
La partition où le lien d'élément doit être créé.En général le DefaultPartition.
- elementLinkType
Type : System.Type
Une relation non abstraite de domaine définie dans la définition de langage spécifique à un domaine.
- roleAssignments
Type : array<Microsoft.VisualStudio.Modeling.RoleAssignment[]
Un tableau d'attributions de rôle de relation pour le nouveau lien d'élément.
- propertyAssignments
Type : array<Microsoft.VisualStudio.Modeling.PropertyAssignment[]
Si la relation de domaine définit des propriétés pour ses instances, vous pouvez assigner leurs valeurs ici.
Valeur de retour
Type : Microsoft.VisualStudio.Modeling.ElementLink
ElementLink l'a créé.
Notes
Cette méthode de créer un lien est plus appropriée pour code généré que pour la programmation ordinaire.
Les exemples suivants utilisent les types définis dans un DÉSOLÉ généré du modèle minimal de solution de langage.
Exemples
Pour créer un lien à l'aide de cette méthode :
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;
Cet exemple crée le même lien plus directement à l'aide de la relation de domaine :
ExampleElementReferencesTargets link = new
ExampleElementReferencesTargets(element1, element2);
Si la relation de domaine définit le rôle de propriétés sur les classes qu'il associe, et si vous ne souhaitez pas une référence au lien, vous pouvez créer le lien à l'aide de le rôle de propriétés.Dans le langage DÉSOLÉ minimal, la relation d'ExampleElementReferencesTargets définit le rôle de propriétés Source et Target :
// Creates the link without returning a reference to it:
element1.Targets.Add(element2);
Sécurité .NET Framework
- Confiance totale accordée à l'appelant immédiat. Ce membre ne peut pas être utilisé par du code d'un niveau de confiance partiel. Pour plus d'informations, consultez Utilisation de bibliothèques à partir de code d'un niveau de confiance partiel.
Voir aussi
Référence
Microsoft.VisualStudio.Modeling, espace de noms