CodeGenerationUtilities Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Служебные программы, используемые шаблонами создания кода
public ref class CodeGenerationUtilities abstract sealed
public static class CodeGenerationUtilities
type CodeGenerationUtilities = class
Public Class CodeGenerationUtilities
- Наследование
-
CodeGenerationUtilities
Поля
| CoreDomainModelNamespacePrefix |
Методы
| AddSerializationResourceStrings(Dictionary<String,KeyValuePair<String,String>>) |
Добавить строки ресурсов, используемые создаваемыми сериализаторами. Добавленные здесь строки не локализованы, поскольку они используются для формирования файла RESX, который будет локализован. |
| AllowMultiple(DomainRole) |
Получает значение, указывающее, позволяет ли данная несколько экземпляров, на основе ее кратности. |
| CalculateInheritanceDepth(DomainClass) |
Получив DomainClass, вычисляет глубину наследования в созданном коде (учитывая дважды производные базовые классы). Используется для определения, требуется ли атрибут SuppressMessage для "излишнего наследования". |
| CreateXmlNamespaceQualifiers(DslLibrary) |
Создайте xmlNamespaceQualifiers для библиотеки dslLibrary и ее импортированных библиотек первого уровня |
| DefinesDiagramElements(DslLibrary) |
Значение true, если заданный объект DslLibrary определяет элементы схемы; в противном случае — значение false. Элементы схемы — это элементы, включенные в DslLibrary.DiagramElements, а также схема (если задано). |
| DefinesNewTargetRole(DomainRelationship) |
При наследовании отношений отношение может использовать тот же исполнитель роли цели, что и его родительское отношение, или может определить новый (который является производным от исполнителя роли цели родительского отношения). Этот метод сообщает, определяет ли заданный объект DomainRelationship новый целевой исполнитель роли. |
| GenerateFontStyle(FontStyle) |
Создайте правильный синтаксис для инициализации стиля шрифта. |
| GetAccessModifier(AccessModifier) |
Получает ключевое слово модификатора доступа C# для данного перечисления AccessModifier |
| GetAttributeProperties(DomainClass, Int32) |
Возвращает все DomainProperties, определенные в заданном DomainClass, который будет сериализован в виде XML-атрибута. |
| GetBaseClass(DomainClass, String) |
Получает строку для объявления базового класса доменного класса. Если базовый класс не определен, используется ModelElement. |
| GetBaseDomainClass(DomainClass) |
Получите базовый класс домена для предоставленного класса. |
| GetBaseDomainClassMonikerSchemaTypeName(DomainClass, String, Dictionary<DslLibrary,String>) |
Получите имя типа схемы моникера для базового класса заданного доменного класса. |
| GetBaseDomainClassMonikerTagName(DomainClass, String, Dictionary<DslLibrary,String>) |
Получение MonikerTagName для базового класса предоставленного доменного класса, когда он сериализуется в качестве моникера. Обратите внимание, что для моникера имя тега не может быть таким же, потому что это потребует двух определений одного и того же элемента в созданной схеме. Имя по умолчанию (если не указано иное с помощью "XmlClassData.MonikerElementName"), является объектом XmlTagName без моникера, за которым следует "Moniker". |
| GetBaseDomainClassSchemaTypeName(DomainClass, String, Dictionary<DslLibrary,String>) |
Получите имя типа схемы для базового класса заданного доменного класса. |
| GetBaseDomainClassXmlTagName(DomainClass, String, Dictionary<DslLibrary,String>) |
Получите XmlTagName для базового класса предоставленного доменного класса. |
| GetBasePropertyHandlerName(DomainProperty) |
Получает базовый класс для PropertyHandler для заданного свойства. Базовый класс отличен, если это свойство является вычисленным. |
| GetBaseRelationship(DomainRelationship) |
Получает строку для объявления базового отношения доменного отношения. Если базовый класс не определен, используется ElementLink. |
| GetBaseRole(DomainRole) |
Получает базовую роль заданной роли, если таковая существует. В противном случае возвращает значение NULL. |
| GetCamelCase(String) |
Преобразовать входную строку в стиль Camel, переведя первый символ в нижний регистр |
| GetDesigner(DslLibrary) |
Получите конструктор, определенный в данной DslLibrary. |
| GetDiagramElementForDecoratorMap(DecoratorMap) |
Получает элемент схемы, связанный с сопоставлением фигуры или соединителя, которое определяет сопоставление декоратора. |
| GetDomainClassMonikerSchemaTypeName(DomainClass, String, Dictionary<DslLibrary,String>) |
Получите имя типа схемы моникера для заданного доменного класса. |
| GetDomainClassMonikerTagName(DomainClass, String) |
Получение MonikerTagName для доменного класса, когда он сериализуется в качестве моникера. Обратите внимание, что для моникера имя тега не может быть таким же, потому что это потребует двух определений одного и того же элемента в созданной схеме. Имя по умолчанию (если не указано иное с помощью "XmlClassData.MonikerElementName"), является объектом XmlTagName без моникера, за которым следует "Moniker". |
| GetDomainClassMonikerTagName(DomainClass, String, Dictionary<DslLibrary,String>) |
Получение MonikerTagName для доменного класса, когда он сериализуется в качестве моникера. Обратите внимание, что для моникера имя тега не может быть таким же, потому что это потребует двух определений одного и того же элемента в созданной схеме. Имя по умолчанию (если не указано иное с помощью "XmlClassData.MonikerElementName"), является объектом XmlTagName без моникера, за которым следует "Moniker". |
| GetDomainClassSchemaTypeName(DomainClass, String, Dictionary<DslLibrary,String>) |
Получите имя типа схемы для заданного доменного класса. |
| GetDomainClassXmlTagName(DomainClass, String) |
Получение XmlTagName для доменного класса. |
| GetDomainClassXmlTagName(DomainClass, String, Dictionary<DslLibrary,String>) |
Получение XmlTagName для доменного класса. |
| GetDomainTypeFullName(DomainProperty) |
Получает полное имя типа DomainProperty (включая универсальные параметры) по отношению к пространству имен класса свойства. |
| GetDomainTypeFullName(DomainType, String) |
Получает полное имя DomainType (включая универсальные параметры) по отношению к заданному текущему пространству имен. |
| GetElementProperties(DomainClass, Int32) |
Возвращает все DomainProperties, определенные в заданном DomainClass, который будет сериализован в виде вложенных XML-элементов. |
| GetGeneratedLinkAccessModifier(DomainRelationship) |
Возвращает наиболее ограниченный модификатор доступа типа из числа переданных в DomainRelationship и исполнителях его роли. |
| GetGeneratedPropertyGetterAccessModifier(DomainRole) |
Возвращает модификатор свойства метода получения, который нужно использовать для получения и задания свойств в классе DomainRelationship |
| GetGeneratedPropertySetterAccessModifier(DomainRole) |
Возвращает модификатор свойства метода задания, который нужно использовать для получения и задания свойств в классе DomainRelationship |
| GetGenerationClassName(DomainClass) |
Возвращает имя создаваемого класса. В случае дважды производного класса к имени доменного класса добавляют "Base". Если нет, то используется имя доменного класса. |
| GetGenerationInheritanceModifier(DomainClass) |
Получает модификатор класса для доменного класса. Возвращает значение «abstract», если класс является дважды производным, поскольку созданный класс (базовый класс) в паре двойной производности всегда является абстрактным |
| GetGuid(Guid) |
Возвращает строку вида "new System.Guid(xxx)", где xxx — строковая форма заданного guid. |
| GetInheritanceModifier(InheritanceModifier) |
Получает ключевое слово модификатора C# для данного перечисления InheritanceModifier |
| GetMethodModifier(Boolean, Boolean) |
Получает модификатор метода (виртуальный, переопределение и др.) в созданном коде с заданными параметрами. |
| GetModelElementDomainClass(Store) |
Возвращает DomainClass, представляющий ModelElement |
| GetNameProperty(DomainClass) |
Возвращает свойство (в данном или базовом классе), которое может использоваться для идентификации элемента для пользователя. Возвращает свойство, которое помечен как IsElementName. В случае отсутствия этого свойства возвращает свойство, помеченное как IsMonikerKey. В случае отсутствия этого свойства возвращает значение NULL. |
| GetPackageNamespace(Dsl) |
Получите имя пакета Dsl для данного Dsl. |
| GetPropertyDefaultValue(DomainProperty, Boolean) |
Возвращает строку для объявления значения свойства по умолчанию (в форме "= defaultValue") |
| GetPropertyDefaultValueAttribute(DomainProperty) |
Получает строку для конструктора System.ComponentModel.DefaultValueAttribute. |
| GetPropertyHandlerName(DomainProperty) |
Получает имя обработчика свойств для свойства. |
| GetPropertyKind(PropertyKind) |
Возвращает строку для вида свойства для конструктора DomainPropertyAttribute. |
| GetPropertyRepresentation(DomainProperty) |
Получение PropertyRepresentation (Attribute, Element или Ignored (атрибут, элемент или не учитывается)) заданного DomainProperty. По умолчанию, если атрибут не задан. |
| GetPropertyTagName(DomainProperty) |
Получает имя тега XML данного DomainProperty. Имя тега будет либо именем атрибута XML, если свойство сериализуется как атрибут XML, либо именем XML-элемента, если свойство сериализуется в виде вложенных XML-элементов. |
| GetRelationshipTagName(DomainRole) |
Получите имя элемента роли XML для отношения данной роли. Примечание. Это RoleElementName (если оно определено), а не имя XML-тега для отношения в полной форме (которое возвращается из GetDomainClassXmlTagName (()). |
| GetSameNameBaseRole(DomainRole) |
Возвращает основную роль данной роли, если она имеет то же имя, что и заданный роль. |
| GetSegmentInputType(PathSegment) |
Для данного pathSegment этот метод возвращает его входное полное имя типа. |
| GetSegmentInputType(PathSegment, Boolean) |
Для данного pathSegment этот метод возвращает его входное полное имя типа. |
| GetSegmentOutputType(PathSegment) |
Для данного pathSegment этот метод возвращает его выходное полное имя типа. |
| GetSegmentOutputType(PathSegment, Boolean) |
Для данного pathSegment этот метод возвращает его выходное полное имя типа. |
| GetSerializedDomainClasses(DslLibrary) |
Получите список всех DomainClasses в заданном DslLibrary, для которых будут созданы сериализаторы. |
| GetTypeAccessModifier(TypeAccessModifier) |
Получает ключевое слово модификатора доступа C# для данного перечисления TypeAccessModifier |
| GetTypeRole(DomainRole) |
Получает роль, определяющую тип создаваемого свойства для данной роли. Это самая базовая роль, имеющая то же имя, что и данная роль. |
| GetVersionString(DslLibrary) |
Получите версию DslLibrary в форме строки. |
| GetXmlSchemaNamespace(DslLibrary) |
Получите пространство имен XML для использования для созданной схемы |
| HasCompartmentMaps(Diagram) |
Значение true, если заданная схема определяет объект CompartmentMaps. |
| HasCustomBaseImplementation(DomainClass) |
Является устаревшей.
Помечен ли заданный класс DomainClass (или любой из его базовых классов) как IsCustom, что означает, что сериализация является настраиваемой. |
| HasCustomTypeDescriptor(DomainClass) |
Возвращает значение true, если для заданного класса определен дескриптор настраиваемого типа, в противном случае – значение false. |
| HasNonAbstractBaseClass(DomainClass) |
Указывает, имеет ли данный DomainClass неабстрактный базовый класс. Это необходимо для определения, требуется ли создавать ключевое слово "new". |
| IsCoreDomainModel(DslLibrary) |
Возвращает значение, указывающее, является ли предоставленный класс Доменной моделью ядра. |
| IsElementLinkDomainClass(DomainClass) |
Возвращает значение, указывающее, представляет ли предоставленный класс домена "ElementLink". |
| IsGuidType(String) |
возвращает значение true, если typeName представляет Guid ("System.Guid") |
| IsInCoreDomainModel(DomainClass) |
Возвращает значение, указывающее, является ли предоставленный класс частью Доменной модели ядра. |
| IsLaxElementSchemaRequired(DomainClass) |
Требуется ли нестрогое определение типа схемы элемента для класса |
| IsModelElementDomainClass(DomainClass) |
Возвращает значение, указывающее, представляет ли предоставленный класс домена "ModelElement". |
| IsMultiple(Multiplicity) |
возвращает значение true, если верхняя граница заданной кратности — * |
| IsOuterDecorator(DiagramElementHasDecorators) |
Возвращает значение true, если заданная ссылка ведет ко внешнему декоратору. |
| IsOuterDecorator(ShapeDecoratorPosition) |
Возвращает значение true, если заданный объект ShapeDecorationPosition - внешний декоратор. |
| IsRootClass(DomainClass) |
Если DomainClass — корневой класс, то все его связанные с сериализацией методы и свойства будут виртуальными (если он не является запечатанным); в противном случае эти методы и свойства будут переопределениями и будут вызывать базовые реализации. В настоящее время DomainClass — корневой класс, если он является производным напрямую от Microsoft.VisualStudio.Modeling.ModelElement или Microsoft.VisualStudio.Modeling.ElementLink. |
| IsStringProperty(DomainProperty) |
Возвращает значение true, если свойство принадлежит к типу string. |
| IsStringType(String) |
возвращает значение true, если typeName представляет строку ("string" или "System.String") |
| MapToSchemaType(DomainType) |
Сопоставляет DomainType с его типом схемы. |
| OmitElement(DomainRelationship) |
Получает значение, указывающее, сериализуется ли заданный DomainRelationship как «OmitElement» (без роли тега элемента). |
| RequiresGeneratedPropertyDescriptor(CustomPropertyDescriptor) |
Возвращает значение true, если заданный дескриптор требует, чтобы производный класс PropertyDescriptor был создан; в противном случае – значение false. |
| SortDomainClassesByInheritance<T>(IEnumerable<T>) |
Сортирует коллекцию DomainClasses на основе относительных связей наследования. В результатах сортировки первым отображается наиболее производный класс. Это используется в следующей ситуации: Предположим, что существует 4 Домаинклассес A, B, C и D. Необходимо создать код следующего вида:... A = obj как; Если (a! = null)... B b = obj как B; If (b! = null)... C c = obj как C; Если (c! = null)... D d = obj как D; Если (d! = null)...... Если C является производным от, приведенный выше код является неверным; правильный код должен сначала проверить на C, прежде чем проверять наличие. Вот почему этот метод должен быть вызван для сортировки Домаинклассес в порядке наследования, а созданный код будет выглядеть следующим образом:... C c = obj как C; Если (c! = null)... A = obj как; Если (a! = null)... B b = obj как B; If (b! = null)... D d = obj как D; Если (d! = null)...... |
| SortProperties(IList<DomainProperty>) |
Сортировка DomainProperties на основе XmlElement.Order (если указано). По умолчанию порядок каждого свойства имеет значение 0. Свойства с меньшим порядком будут отображаться первыми. Свойства того же порядка не будут отсортированы (т. е. они будут хранить относительный порядок после сортировки). Сортировка выполняется на месте, поэтому переданная коллекция изменяется напрямую. |
| SortRoles(IList<DomainRole>) |
Сортировка DomainRoles на основе XmlRelationshipElement.Order (если указано). По умолчанию порядок каждой роли имеет значение 0. Роли с меньшим порядком будут отображаться первыми. Роли в том же порядке не будут отсортированы (т. е. они будут хранить относительный порядок после сортировки). Сортировка выполняется на месте, поэтому переданная коллекция изменяется напрямую. |
| UseFullForm(DomainRelationship) |
Получает значение, указывающее, сериализуется ли заданный объект DomainRelationship в полной форме. |
| WrapAsCSharpString(String) |
Переносит заданную строку в строковый литерал в синтаксисе C#. |