CodeGenerationUtilities, classe
Utilitaires utilisés par les modèles de génération de code
Hiérarchie d'héritage
System.Object
Microsoft.VisualStudio.Modeling.DslDefinition.CodeGenerationUtilities
Espace de noms : Microsoft.VisualStudio.Modeling.DslDefinition
Assembly : Microsoft.VisualStudio.Modeling.Sdk.DslDefinition.12.0 (dans Microsoft.VisualStudio.Modeling.Sdk.DslDefinition.12.0.dll)
Syntaxe
'Déclaration
Public NotInheritable Class CodeGenerationUtilities
public static class CodeGenerationUtilities
Le type CodeGenerationUtilities expose les membres suivants.
Méthodes
Nom | Description | |
---|---|---|
AddSerializationResourceStrings | Ajoute les chaînes de ressource utilisées par des sérialiseurs générés.Les chaînes ajoutées ici ne sont pas localisées, car elles sont utilisées pour générer le fichier resx, qui sera localisé. | |
AllowMultiple | Obtient une valeur indiquant si le rôle donné permet plusieurs instances, selon la multiplicité. | |
CalculateInheritanceDepth | Pour une DomainClass donnée, calcule la profondeur d'héritage du code généré (en tenant compte des classes de base doublement dérivées).Cela permet de déterminer si l'attribut SuppressMessage est nécessaire à l'"excès d'héritage". | |
CreateXmlNamespaceQualifiers | Créer xmlNamespaceQualifiers pour la dslLibrary et ses bibliothèques importées de premier niveau. | |
DefinesDiagramElements | True si le DslLibrary donné définit des éléments de diagramme ; sinon, false.Les éléments de diagrammes sont des éléments inclus dans DslLibrary.DiagramElements, plus le diagramme (s'il est défini). | |
DefinesNewTargetRole | Dans la dérivation de relation, une relation peut utiliser le même acteur de rôle cible que sa relation parente, ou elle peut en définir un nouveau (qui dérive de l'acteur de rôle cible de la relation parente).Cette méthode indique si le DomainRelationship donné définit un nouvel acteur de rôle cible. | |
GenerateFontStyle | Créer la syntaxe correcte pour initialiser un style de police. | |
GetAccessModifier | Obtient le mot clé de modificateur d'accès C# pour l'énumération AccessModifier donnée | |
GetAttributeProperties | Retourne toutes les DomainProperties définies sur la DomainClass donnée qui sera sérialisée en tant qu'attribut XML. | |
GetBaseClass | Obtient la chaîne pour déclarer la classe de base d'une classe de domaine.Si la classe de base n'est pas définie, le ModelElement est utilisé. | |
GetBaseDomainClass | Obtient la classe de base de domaine de la classe fournie | |
GetBaseDomainClassMonikerSchemaTypeName | Obtient le nom de type de schéma de nom pour la classe de base de la classe de domaine donnée. | |
GetBaseDomainClassMonikerTagName | Obtient le nom MonikerTagName de la classe de base de la classe de domaine fournie lorsqu'elle est sérialisée comme nom.Notez que le nom de balise ne peut pas être le même pour le moniker, car cela nécessite deux définitions du même élément dans le schéma généré.Le nom par défaut utilisé (s'il n'est pas spécifié à l'aide de XmlClassData.MonikerElementName) sera le XmlTagName non-moniker suivi de « Moniker ». | |
GetBaseDomainClassSchemaTypeName | Obtient le nom de type de schéma pour la classe de base de la classe de domaine donnée. | |
GetBaseDomainClassXmlTagName | Obtient le XmlTagName de la classe de base de la classe de domaine fournie. | |
GetBasePropertyHandlerName | Obtient la classe de base du PropertyHandler pour la propriété donnée.La classe de base est différente s'il s'agit d'une propriété calculée. | |
GetBaseRelationship | Obtient la chaîne pour déclarer la relation de base d'une relation de domaine.Si la classe de base n'est pas définie, l'ElementLink est utilisé. | |
GetBaseRole | Obtient le rôle de base du rôle donné, s'il existe.Dans le cas contraire, la valeur Null est retournée. | |
GetCamelCase | Convertit la chaîne d'entrée en casse mixte par la mise en minuscules du premier caractère. | |
GetDesigner | Obtient le Designer défini dans le DslLibrary donné. | |
GetDiagramElementForDecoratorMap | Obtient l'élément de diagramme associé à la carte de forme ou de connecteur qui définit une carte d'élément décoratif. | |
GetDomainClassMonikerSchemaTypeName | Obtient le nom de type de schéma de nom pour la classe de domaine donnée. | |
GetDomainClassMonikerTagName(DomainClass, String) | Obtient le nom MonikerTagName pour une classe de domaine, lorsqu'elle est sérialisée comme nom.Notez que le nom de balise ne peut pas être le même pour le moniker, car cela nécessite deux définitions du même élément dans le schéma généré.Le nom par défaut utilisé (s'il n'est pas spécifié à l'aide de XmlClassData.MonikerElementName) sera le XmlTagName non-moniker suivi de « Moniker ». | |
GetDomainClassMonikerTagName(DomainClass, String, Dictionary<DslLibrary, String>) | Obtient le nom MonikerTagName pour une classe de domaine, lorsqu'elle est sérialisée comme nom.Notez que le nom de balise ne peut pas être le même pour le moniker, car cela nécessite deux définitions du même élément dans le schéma généré.Le nom par défaut utilisé (s'il n'est pas spécifié à l'aide de XmlClassData.MonikerElementName) sera le XmlTagName non-moniker suivi de « Moniker ». | |
GetDomainClassSchemaTypeName | Obtient le nom de type de schéma pour la classe de domaine donnée. | |
GetDomainClassXmlTagName(DomainClass, String) | Obtient le XmlTagName pour une classe de domaine. | |
GetDomainClassXmlTagName(DomainClass, String, Dictionary<DslLibrary, String>) | Obtient le XmlTagName pour une classe de domaine. | |
GetDomainTypeFullName(DomainProperty) | Obtient le nom complet du type du DomainProperty (y compris les paramètres génériques) par rapport à l'espace de noms de la classe de la propriété. | |
GetDomainTypeFullName(DomainType, String) | Obtient le nom complet du DomainType (y compris les paramètres génériques) par rapport à l'espace de noms actuel donné. | |
GetElementProperties | Retourne toutes les DomainProperties définies sur la DomainClass donnée qui sera sérialisée en tant qu'élément XML imbriqué. | |
GetGeneratedLinkAccessModifier | Retourne le modificateur d'accès de type le plus limité dans la DomainRelationship et ses lecteurs de rôle passés. | |
GetGeneratedPropertyGetterAccessModifier | Retourne le modificateur de propriété d'accesseur Get à utiliser pour les propriétés Get/Set de la classe DomainRelationship | |
GetGeneratedPropertySetterAccessModifier | Retourne le modificateur de propriété d'accesseur Set à utiliser pour les propriétés Get/Set de la classe DomainRelationship | |
GetGenerationClassName | Retourne le nom de la classe à générer.Dans le cas d'une classe double dérivée, nous ajoutons « base » au nom de la classe de domaine.Sinon, le nom de la classe de domaine est utilisé. | |
GetGenerationInheritanceModifier | Obtient le modificateur de classe d'une classe de domaine.Retourne « abstract » si la classe est une classe double dérivée car la classe générée (classe de base) d'une paire double/dérivée est toujours abstraite | |
GetGuid | Retourne une chaîne au format « nouveau System.Guid (xxx) » où xxx est le format de chaîne du GUID donné. | |
GetInheritanceModifier | Obtient le mot clé de modificateur C# pour l'énumération InheritanceModifier donnée | |
GetMethodModifier | Obtient le modificateur de méthode (virtuel, substitution, etc.) dans le code généré avec les paramètres donnés. | |
GetModelElementDomainClass | Retourne le DomainClass qui représente ModelElement | |
GetNameProperty | Retourne une propriété (de cette classe ou d'une classe de base) qui peut être utilisée pour identifier un élément pour l'utilisateur.Retourne la propriété marquée IsElementName.S'il n'y en a pas, retourne la propriété marquée IsMonikerKey.S'il n'y en a pas, retourne la valeur null. | |
GetPackageNamespace | Obtient le nom du package DSL pour le DSL donné. | |
GetPropertyDefaultValue | Retourne la chaîne qui permet de déclarer la valeur par défaut d'une propriété (sous la forme « = defaultValue » | |
GetPropertyDefaultValueAttribute | Obtient la chaîne pour le constructeur de System.ComponentModel.DefaultValueAttribute. | |
GetPropertyHandlerName | Obtient le nom du gestionnaire de propriété pour une propriété. | |
GetPropertyKind | Retourne la chaîne correspondant au genre de la propriété pour le constructeur DomainPropertyAttribute. | |
GetPropertyRepresentation | Obtient le PropertyRepresentation (attribut, élément ou ignoré) du DomainProperty donné.La valeur par défaut est Attribute si elle n'est pas spécifiée. | |
GetPropertyTagName | Obtient le nom de balise XML du DomainProperty donné.Le nom de l'identificateur sera soit le nom de l'attribut XML si la propriété est sérialisée en tant qu'attribut XML, soit le nom de l'élément XML si la propriété est sérialisée en tant qu'élément XML imbriqué. | |
GetRelationshipTagName | Obtient le nom de rôle d'élément XML de la relation du rôle donné.Remarque : il s'agit du RoleElementName (s'il est défini) et non du nom de balise XML pour une relation sous une forme complète (retourné par GetDomainClassXmlTagName()). | |
GetSameNameBaseRole | Retourne le rôle de base du rôle donné s'il a le même nom que le rôle donné | |
GetSegmentInputType(PathSegment) | Pour le pathSegment donné, cette méthode retourne son nom de type qualifié complet d'entrée. | |
GetSegmentInputType(PathSegment, Boolean) | Pour le pathSegment donné, cette méthode retourne son nom de type qualifié complet d'entrée. | |
GetSegmentOutputType(PathSegment) | Pour le pathSegment donné, cette méthode retourne son nom de type qualifié complet de sortie. | |
GetSegmentOutputType(PathSegment, Boolean) | Pour le pathSegment donné, cette méthode retourne son nom de type qualifié complet de sortie. | |
GetSerializedDomainClasses | Obtient une liste de toutes les DomainClasses dans le DslLibrary donné qui aura des sérialiseurs générés. | |
GetTypeAccessModifier | Obtient le mot clé de modificateur d'accès C# pour l'énumération TypeAccessModifier donnée | |
GetTypeRole | Obtient le rôle qui détermine le type de la propriété générée pour ce rôle.Il s'agit du rôle le plus basique portant le même nom que ce rôle. | |
GetVersionString | Obtient la version d'un DslLibrary sous forme de chaîne. | |
GetXmlSchemaNamespace | Obtient l'espace de noms XML à utiliser pour le schéma généré | |
HasCompartmentMaps | True si le Diagram donné définit CompartmentMaps. | |
HasCustomBaseImplementation | Obsolète. Indique si le DomainClass donné (ou l'un de ses DomainClass de base) est marqué comme "IsCustom", ce qui signifie que la sérialisation est personnalisée. | |
HasCustomTypeDescriptor | Retourne la valeur true si la classe donnée a un descripteur de type personnalisé défini ; sinon false. | |
HasNonAbstractBaseClass | Indique si le DomainClass donné possède une classe de base non abstraite.Il est nécessaire de déterminer si un mot clé "new" doit être généré. | |
IsCoreDomainModel | Retourne si la classe fournie est le modèle de domaine Core | |
IsElementLinkDomainClass | Retourne si la classe de domaine fournie représente ElementLink. | |
IsGuidType | retourne la valeur true si typeName représente un GUID (System.Guid) | |
IsInCoreDomainModel | Retourne si la classe fournie fait partie du modèle de domaine Core | |
IsLaxElementSchemaRequired | Indique si une définition du type de schéma d'un élément lax est requise pour la classe | |
IsModelElementDomainClass | Retourne si la classe de domaine fournie représente ModelElement. | |
IsMultiple | retourne la valeur true si la limite supérieure de la multiplicité donnée est * | |
IsOuterDecorator(DiagramElementHasDecorators) | Retourne la valeur true si le lien donné connecte à un élément décoratif externe. | |
IsOuterDecorator(ShapeDecoratorPosition) | Retourne la valeur true si la ShapeDecorationPosition donnée est un élément décoratif externe. | |
IsRootClass | Si une DomainClass est une classe racine, toutes ses méthodes/propriétés liées à la sérialisation sont virtuelles (à moins qu'elle soit scellée) ; sinon, ces méthodes/propriétés sont « substituées » et appellent des implémentations de base.Actuellement, un DomainClass est une classe racine s'il dérive directement de Microsoft.VisualStudio.Modeling.ModelElement ou de Microsoft.VisualStudio.Modeling.ElementLink. | |
IsStringProperty | retourne la valeur true si la propriété est de type chaîne. | |
IsStringType | retourne la valeur true si typeName représente une chaîne (string ou System.String) | |
MapToSchemaType | Mappe un DomainType à son type de schéma. | |
OmitElement | Obtient une valeur indiquant si le DomainRelationship donné est sérialisé en tant que « OmitElement » (sans balise d'élément de rôle). | |
RequiresGeneratedPropertyDescriptor | Retourne la valeur true si le descripteur donné requiert la génération d'une classe dérivée PropertyDescriptor ; sinon, false. | |
SortDomainClassesByInheritance<T> | Trie une collection de DomainClasses en fonction des relations d'héritage relatives.La plus dérivée s'affiche en premier dans les résultats de tri.Cela est utilisé dans la situation suivante : Supposons quatre DomainClass A, B, C et D.Vous devez générer du code comme suit : …A a = obj comme A; si (a != null) …B b = obj as B; if (b != null) ...C c = obj as C; if (c != null) ...D d = obj as D; if (d != null) ... ...Si C dérive de A, le code ci-dessus est erroné ; le code approprié doit d'abord vérifier C avant A.C'est la raison pour laquelle cette méthode doit être appelée pour trier les DomainClasses par ordre d'héritage et le code généré se présentera comme : …C c = obj as C; if (c != null) ...A a = obj comme A; si (a != null) …B b = obj as B; if (b != null) ...D d = obj as D; if (d != null) ... ... | |
SortProperties | Trie DomainProperties selon XmlElement.Order (si spécifié).Par défaut, l'ordre de chaque propriété est 0.Les propriétés faiblement triées s'affichent en premier.Les propriétés de la même commande ne sont pas triées. (c. - à-d. elles conservent leur ordre relatif après le tri).Le tri est effectué sur place, par conséquent la collection passée sera modifiée directement. | |
SortRoles | Trie DomainRoles selon XmlRelationshipElement.Order (si spécifié).Par défaut, l'ordre de chaque rôle est 0.Les rôles faiblement triés s'affichent en premier.Les rôles de la même commande ne sont pas triés. (c. - à-d. ils conservent leur ordre relatif après le tri).Le tri est effectué sur place, par conséquent la collection passée sera modifiée directement. | |
UseFullForm | Obtient une valeur indiquant si le DomainRelationship donné est sérialisé sous une forme complète. | |
WrapAsCSharpString | Encapsule la chaîne donnée dans un littéral de chaîne dans la syntaxe C#. |
Début
Champs
Nom | Description | |
---|---|---|
CoreDomainModelNamespacePrefix |
Début
Sécurité des threads
Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.
Voir aussi
Référence
Microsoft.VisualStudio.Modeling.DslDefinition, espace de noms