Compartir a través de


CodeGenerationUtilities (Clase)

Utilidades que las plantillas de generación de código

Jerarquía de herencia

System.Object
  Microsoft.VisualStudio.Modeling.DslDefinition.CodeGenerationUtilities

Espacio de nombres:  Microsoft.VisualStudio.Modeling.DslDefinition
Ensamblado:  Microsoft.VisualStudio.Modeling.Sdk.DslDefinition.11.0 (en Microsoft.VisualStudio.Modeling.Sdk.DslDefinition.11.0.dll)

Sintaxis

'Declaración
Public NotInheritable Class CodeGenerationUtilities
public static class CodeGenerationUtilities

El tipo CodeGenerationUtilities expone los siguientes miembros.

Métodos

  Nombre Descripción
Método públicoMiembro estático AddSerializationResourceStrings agregue las cadenas de recursos utilizadas por los serializadores generados.La cadena incluida aquí no se encuentra, porque se utilizan para generar el archivo resx, que se localizará.
Método públicoMiembro estático AllowMultiple Obtiene si el rol dado permite varias instancias, en función de su Multiplicity.
Método públicoMiembro estático CalculateInheritanceDepth Dado un DomainClass, calcule la profundidad de herencia en el código generado (que tiene en cuenta de clases base doble-derivadas).Se utiliza para determinar si es necesario un atributo SuppressMessage para “herencia excesiva”.
Método públicoMiembro estático CreateXmlNamespaceQualifiers Cree los xmlNamespaceQualifiers para bibliotecas dslLibrary y sus primer nivel importadas
Método públicoMiembro estático DefinesDiagramElements True si el DslLibrary especificado define los elementos del diagrama, false en caso contrario.Los elementos del diagrama son los elementos incluidos en DslLibrary.DiagramElements, más diagrama (si se está definido).
Método públicoMiembro estático DefinesNewTargetRole En la derivación de la relación, una relación puede utilizar el mismo encargado de función de destino que su relación primaria, o puede definir un nuevo (derivado de encargado de función primario de destino de la relación).Este método indica si el DomainRelationship determinado defina un nuevo encargado de función de destino.
Método públicoMiembro estático GenerateFontStyle cree la sintaxis correcta para un estilo de fuente que se inicializa.
Método públicoMiembro estático GetAccessModifier Obtiene la palabra clave del modificador de acceso de C# para la enumeración determinado de AccessModifier
Método públicoMiembro estático GetAttributeProperties Devuelve todos los DomainProperties definido en el DomainClass determinado que se serializarán como un atributo XML.
Método públicoMiembro estático GetBaseClass Obtiene la cadena para declarar la clase base de una clase de dominio.Si la clase base no está definido, se utiliza ModelElement.
Método públicoMiembro estático GetBaseDomainClass Obtenga la clase base de dominio para la clase proporcionada
Método públicoMiembro estático GetBaseDomainClassMonikerSchemaTypeName Obtiene el nombre de tipo de esquema el moniker de la clase base del tipo especificado del dominio.
Método públicoMiembro estático GetBaseDomainClassMonikerTagName Obtiene el MonikerTagName para la clase base de la clase proporcionada por el dominio cuando se va a serializar como un moniker.Observe que el nombre de etiqueta no puede ser el mismo para el moniker, porque requerirá dos definiciones del mismo elemento en el esquema generado.El nombre predeterminado utilizado (si no especificado utilizando “XmlClassData.MonikerElementName”), será el no-apodo XmlTagName seguido de “moniker”.
Método públicoMiembro estático GetBaseDomainClassSchemaTypeName Obtiene el nombre de tipo de esquema para la clase base del tipo especificado del dominio.
Método públicoMiembro estático GetBaseDomainClassXmlTagName Obtiene el XmlTagName para la clase base de la clase proporcionada del dominio.
Método públicoMiembro estático GetBasePropertyHandlerName Obtiene la clase base para el PropertyHandler para la propiedad especificada.la clase base es diferente si es una propiedad calculada.
Método públicoMiembro estático GetBaseRelationship Obtiene la cadena para declarar la relación base de relación de dominio.Si la clase base no está definido, se utiliza ElementLink.
Método públicoMiembro estático GetBaseRole Obtiene el rol base de rol dado si existe uno.De lo contrario, devuelve null.
Método públicoMiembro estático GetCamelCase Conver la cadena de entrada en la grafía camel por la bajo-cubierta el primer carácter
Método públicoMiembro estático GetDesigner Obtiene el Diseñador definido en el DslLibrary especificado.
Método públicoMiembro estático GetDiagramElementForDecoratorMap Obtiene el elemento del diagrama asociado con la forma o el conector asignado que definen un mapa de decorador.
Método públicoMiembro estático GetDomainClassMonikerSchemaTypeName Obtiene el nombre de tipo de esquema el moniker para la clase dada del dominio.
Método públicoMiembro estático GetDomainClassMonikerTagName(DomainClass, String) Obtiene el MonikerTagName para una clase de dominio, cuando se va a serializar como un moniker.Observe que el nombre de etiqueta no puede ser el mismo para el moniker, porque requerirá dos definiciones del mismo elemento en el esquema generado.El nombre predeterminado utilizado (si no especificado utilizando “XmlClassData.MonikerElementName”), será el no-apodo XmlTagName seguido de “moniker”.
Método públicoMiembro estático GetDomainClassMonikerTagName(DomainClass, String, Dictionary<DslLibrary, String>) Obtiene el MonikerTagName para una clase de dominio, cuando se va a serializar como un moniker.Observe que el nombre de etiqueta no puede ser el mismo para el moniker, porque requerirá dos definiciones del mismo elemento en el esquema generado.El nombre predeterminado utilizado (si no especificado utilizando “XmlClassData.MonikerElementName”), será el no-apodo XmlTagName seguido de “moniker”.
Método públicoMiembro estático GetDomainClassSchemaTypeName Obtiene el nombre de tipo de esquema para el tipo especificado del dominio.
Método públicoMiembro estático GetDomainClassXmlTagName(DomainClass, String) Obtiene el XmlTagName para una clase de dominio.
Método públicoMiembro estático GetDomainClassXmlTagName(DomainClass, String, Dictionary<DslLibrary, String>) Obtiene el XmlTagName para una clase de dominio.
Método públicoMiembro estático GetDomainTypeFullName(DomainProperty) Obtiene el nombre completo del tipo de DomainProperty (parámetros genéricos incluida en relación con el espacio de nombres del tipo de propiedad.
Método públicoMiembro estático GetDomainTypeFullName(DomainType, String) Obtiene el nombre completo del DomainType (parámetros genéricos incluida en relación con el espacio de nombres actual especificado.
Método públicoMiembro estático GetElementProperties Devuelve todos los DomainProperties definido en el DomainClass determinado que se serializarán como elemento XML anidadas.
Método públicoMiembro estático GetGeneratedLinkAccessModifier Devuelve el modificador más limitado de acceso de tipo entre pasado en DomainRelationship y los encargados de función.
Método públicoMiembro estático GetGeneratedPropertyGetterAccessModifier Devuelve el modificador de la propiedad get que se utilizará para las propiedades get/set en la clase de DomainRelationship
Método públicoMiembro estático GetGeneratedPropertySetterAccessModifier Devuelve el modificador de la propiedad set que se utilizará para las propiedades get/set en la clase de DomainRelationship
Método públicoMiembro estático GetGenerationClassName devuelve el nombre de la clase que se generará.En el caso de una clase doble-derivada, agregamos la “base” al nombre de la clase de dominio.Si no, el nombre de la clase de dominio se utiliza.
Método públicoMiembro estático GetGenerationInheritanceModifier Obtiene el modificador de clase de una clase de dominio.Devuelve “resumen” si la clase es una clase derivada doble porque la clase generada (clase base) en un par doble-derivado siempre es abstracta
Método públicoMiembro estático GetGuid Devuelve una cadena con el formato “nuevo System.Guid (xxx)” donde el formulario xxx de la cadena de guid especificado.
Método públicoMiembro estático GetInheritanceModifier Obtiene la palabra clave de modificador de C# para la enumeración determinado de InheritanceModifier
Método públicoMiembro estático GetMethodModifier Obtiene el modificador del método (virtual, override, etc.) en el código generado con los parámetros especificados.
Método públicoMiembro estático GetModelElementDomainClass devuelve el DomainClass que representa ModelElement
Método públicoMiembro estático GetNameProperty Devuelve una propiedad (en esto o una clase base) que se puede utilizar para idenfify un elemento al usuario.devuelve el IsElementName marcado propiedad.Si no existen, devuelve el IsMonikerKey marcado propiedad.Si no existen, devuelve null.
Método públicoMiembro estático GetPackageNamespace Obtiene el nombre del paquete de ADSL para el ADSL especificado.
Método públicoMiembro estático GetPropertyDefaultValue Devuelve la cadena para declarar el valor predeterminado de una propiedad (en el formato “= defaultValue”
Método públicoMiembro estático GetPropertyDefaultValueAttribute Obtiene la cadena del constructor de System.ComponentModel.DefaultValueAttribute.
Método públicoMiembro estático GetPropertyHandlerName Obtiene el nombre de un controlador de una propiedad
Método públicoMiembro estático GetPropertyKind Devuelve la cadena para la clase de la clase de la propiedad del constructor de DomainPropertyAttribute.
Método públicoMiembro estático GetPropertyRepresentation Obtiene el PropertyRepresentation (atributo, elemento, o omitido) de DomainProperty especificado.El valor predeterminado es atributo si no especificado.
Método públicoMiembro estático GetPropertyTagName Obtiene el nombre de etiqueta XML de DomainProperty especificado.El nombre de etiqueta será el nombre de atributo XML si la propiedad es serializado como un atributo XML, como nombre de elemento XML si la propiedad es serializada como elemento XML anidadas.
Método públicoMiembro estático GetRelationshipTagName Obtiene el nombre de rol de elemento XML para la relación del rol especificado.nota: éste es el RoleElementName (si está definido), no el nombre de etiqueta XML para una relación total (que se devuelve de GetDomainClassXmlTagName()).
Método públicoMiembro estático GetSameNameBaseRole Devuelve el rol base de rol dado si tiene el mismo nombre que el rol especificado
Método públicoMiembro estático GetSegmentInputType(PathSegment) Para el pathSegment determinado, este método devuelve el nombre de tipo completo de la entrada.
Método públicoMiembro estático GetSegmentInputType(PathSegment, Boolean) Para el pathSegment determinado, este método devuelve el nombre de tipo completo de la entrada.
Método públicoMiembro estático GetSegmentOutputType(PathSegment) Para el pathSegment determinado, este método devuelve el nombre de tipo completo de la salida.
Método públicoMiembro estático GetSegmentOutputType(PathSegment, Boolean) Para el pathSegment determinado, este método devuelve el nombre de tipo completo de la salida.
Método públicoMiembro estático GetSerializedDomainClasses Obtiene una lista de todas las DomainClasses en el DslLibrary dado que tendrá serializadores generados.
Método públicoMiembro estático GetTypeAccessModifier Obtiene la palabra clave del modificador de acceso de C# para la enumeración determinado de TypeAccessModifier
Método públicoMiembro estático GetTypeRole obtiene el rol que determina el tipo de la propiedad generada para este rol.éste es el rol de la más-base que tiene el mismo nombre que este rol.
Método públicoMiembro estático GetVersionString Obtiene la versión de un DslLibrary en forma de cadena.
Método públicoMiembro estático GetXmlSchemaNamespace Obtenga el espacio de nombres XML para utilizar para el esquema generado
Método públicoMiembro estático HasCompartmentMaps True si el diagrama determinado define CompartmentMaps.
Método públicoMiembro estático HasCustomBaseImplementation Obsoleto. Si el DomainClass determinado (o ninguno de la base DomainClasses) se marca como se personaliza “IsCustom”, lo que significa que la serialización.
Método públicoMiembro estático HasCustomTypeDescriptor Devuelve true si la clase especificada tiene un descriptor de tipos personalizado definido en caso contrario, false.
Método públicoMiembro estático HasNonAbstractBaseClass Indica si el DomainClass dado tiene una clase base de no abstracto.Es necesario determinar si una “nueva” palabra clave necesita generar.
Método públicoMiembro estático IsCoreDomainModel Devuelve si la clase proporcionada es el modelo de dominio básico
Método públicoMiembro estático IsElementLinkDomainClass Devuelve si la clase proporcionada de dominio representa “ElementLink”.
Método públicoMiembro estático IsGuidType devuelve true si typeName representa Guid (“System.Guid”)
Método públicoMiembro estático IsInCoreDomainModel Devuelve si la clase proporcionada es parte del modelo de dominio básico
Método públicoMiembro estático IsLaxElementSchemaRequired Si una definición de tipo aproximada del esquema de elementos se requiere para la clase
Método públicoMiembro estático IsModelElementDomainClass Devuelve si la clase proporcionada de dominio representa “ModelElement”.
Método públicoMiembro estático IsMultiple devuelve true si el límite superior de multiplicidad determinada *
Método públicoMiembro estático IsOuterDecorator(DiagramElementHasDecorators) Devuelve true si el vínculo especificado se conecta a un elemento decorator externo.
Método públicoMiembro estático IsOuterDecorator(ShapeDecoratorPosition) Devuelve true si el ShapeDecorationPosition determinado decorador externo.
Método públicoMiembro estático IsRootClass Si un DomainClass es una clase raíz, todos sus métodos y propiedades serialización-relacionados se virtuales (a menos que ha sealed); si no, estos métodos y propiedades se “override” y llamará implementaciones base.actualmente, un DomainClass es una clase de la raíz si deriva de Microsoft.VisualStudio.Modeling.ModelElement o de Microsoft.VisualStudio.Modeling.ElementLink directamente.
Método públicoMiembro estático IsStringProperty devuelve true si la propiedad es de tipo cadena.
Método públicoMiembro estático IsStringType devuelve true si typeName representa una cadena (“cadena” o “System.String”)
Método públicoMiembro estático MapToSchemaType Asigna un DomainType al tipo de esquema.
Método públicoMiembro estático OmitElement Obtiene si el DomainRelationship especificado es serializado como “OmitElement” (sin el rol del elemento).
Método públicoMiembro estático RequiresGeneratedPropertyDescriptor Devuelve true si descriptor especificado requiere una clase derivada de PropertyDescriptor generar, false.
Método públicoMiembro estático SortDomainClassesByInheritance<T> Ordenar una colección de DomainClasses basándose en relaciones relativas de herencia.el más derivado aparecerá primero en el resultado de la ordenación.Se utiliza en las situaciones siguientes: Indica que hay 4 DomainClasses A, b, C y d.Debe generar un código como el siguiente: …A = obj como; ¡si (a! = null)…B = obj b como b; ¡si (b! = null)…C = obj de C como C; ¡si (c! = null)…D = obj de d como d; ¡si (d! = null)…...Si C deriva de A, el código anterior es incorrecto; código correcto debe comprobar C antes de comprobar A.Por eso este método se debe llamar a tamaño el DomainClasses en orden de herencia, y el código generado tendrá el siguiente aspecto: …C = obj de C como C; ¡si (c! = null)…A = obj como; ¡si (a! = null)…B = obj b como b; ¡si (b! = null)…D = obj de d como d; ¡si (d! = null)…...
Método públicoMiembro estático SortProperties Ordenación DomainProperties basado en XmlElement.Order (si se especifica).De forma predeterminada, el orden de cada propiedad es 0.Las propiedades con un pedido más pequeña aparecerán primero.Las propiedades del mismo pedido no se ordenan (es decir.mantengan su orden relativo después de ordenar).La ordenación es en contexto, por lo que la pasada colección se convertirá directamente.
Método públicoMiembro estático SortRoles Ordenación DomainRoles basado en XmlRelationshipElement.Order (si se especifica).De forma predeterminada, el orden de cada rol es 0.Los roles con un pedido más pequeña aparecerán primero.Los roles del mismo pedido no se ordenarán (es decir.mantengan su orden relativo después de ordenar).La ordenación es en contexto, por lo que la pasada colección se convertirá directamente.
Método públicoMiembro estático UseFullForm Obtiene si el DomainRelationship especificado es serializado en total.
Método públicoMiembro estático WrapAsCSharpString Ajuste la cadena especificada en un literal de cadena en la sintaxis de C#.

Arriba

Campos

  Nombre Descripción
Campo públicoMiembro estático CoreDomainModelNamespacePrefix

Arriba

Seguridad para subprocesos

Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Vea también

Referencia

Microsoft.VisualStudio.Modeling.DslDefinition (Espacio de nombres)