CodeGenerationUtilities 클래스
코드 생성 템플릿에서 사용되는 유틸리티
상속 계층 구조
System.Object
Microsoft.VisualStudio.Modeling.DslDefinition.CodeGenerationUtilities
네임스페이스: Microsoft.VisualStudio.Modeling.DslDefinition
어셈블리: Microsoft.VisualStudio.Modeling.Sdk.DslDefinition.12.0(Microsoft.VisualStudio.Modeling.Sdk.DslDefinition.12.0.dll)
구문
‘선언
Public NotInheritable Class CodeGenerationUtilities
public static class CodeGenerationUtilities
CodeGenerationUtilities 형식에서는 다음과 같은 멤버를 노출합니다.
메서드
이름 | 설명 | |
---|---|---|
![]() ![]() |
AddSerializationResourceStrings | 생성된 serializer에서 사용되는 리소스 문자열을 추가합니다.여기에 추가된 문자열은 지역화되는 resx 파일을 생성하는 데 사용되므로 지역화되지 않습니다. |
![]() ![]() |
AllowMultiple | 지정된 역할에서 복수 인스턴스를 허용할 경우 Multiplicity를 기준으로 가져옵니다. |
![]() ![]() |
CalculateInheritanceDepth | DomainClass가 지정되면 생성된 코드의 상속 깊이를 계산합니다(이중 파생 기본 클래스 고려)."지나친 상속성"에 대해 SuppressMessage 특성이 필요한지 여부를 결정하는 데 사용됩니다. |
![]() ![]() |
CreateXmlNamespaceQualifiers | dslLibrary 및 첫 번째 수준의 가져온 라이브러리에 대한 xmlNamespaceQualifiers를 만듭니다. |
![]() ![]() |
DefinesDiagramElements | 지정된 DslLibrary가 다이어그램 요소를 정의하면 true이고, 그렇지 않으면 false입니다.다이어그램 요소는 DslLibrary.DiagramElements에 포함된 요소와 다이어그램(정의된 경우)입니다. |
![]() ![]() |
DefinesNewTargetRole | 관계를 파생할 때 관계에서는 부모 관계와 같은 대상 역할 담당자를 사용하거나 부모 관계의 대상 역할 담당자에서 파생되는 새로운 관계를 정의할 수 있습니다.이 메서드는 지정된 DomainRelationship이 새 대상 역할 수행자를 정의하는지 여부를 알려줍니다. |
![]() ![]() |
GenerateFontStyle | 글꼴 스타일을 초기화하기 위한 올바른 구문을 만듭니다. |
![]() ![]() |
GetAccessModifier | 지정된 AccessModifier 열거형에 대한 C# 액세스 한정자 키워드를 가져옵니다. |
![]() ![]() |
GetAttributeProperties | XML 특성으로 serialize될 지정된 DomainClass에 정의된 모든 DomainProperties를 반환합니다. |
![]() ![]() |
GetBaseClass | 도메인 클래스의 기본 클래스를 선언하기 위한 문자열을 가져옵니다.기본 클래스가 정의되지 않은 경우 ModelElement가 사용됩니다. |
![]() ![]() |
GetBaseDomainClass | 제공된 클래스의 기본 도메인 클래스를 가져옵니다. |
![]() ![]() |
GetBaseDomainClassMonikerSchemaTypeName | 지정된 도메인 클래스의 기본 클래스에 대한 모니커 스키마 형식 이름을 가져옵니다. |
![]() ![]() |
GetBaseDomainClassMonikerTagName | 모니커로 serialize될 때 제공된 도메인 클래스의 기본 클래스에 대한 MonikerTagName을 가져옵니다.태그 이름은 모니커에 대해 같을 수 없습니다. 이 이름은 생성된 스키마 내 같은 요소에서 두 가지 정의를 필요로 하기 때문입니다."XmlClassData.MonikerElementName"을 사용하여 지정하지 않은 경우 사용되는 기본 이름은 모니커가 아닌 XmlTagName이고 뒤에 "Moniker"가 옵니다. |
![]() ![]() |
GetBaseDomainClassSchemaTypeName | 지정된 도메인 클래스의 기본 클래스에 대한 스키마 형식 이름을 가져옵니다. |
![]() ![]() |
GetBaseDomainClassXmlTagName | 제공된 도메인 클래스의 기본 클래스에 대한 XmlTagName을 가져옵니다. |
![]() ![]() |
GetBasePropertyHandlerName | 지정된 속성에 대한 PropertyHandler의 기본 클래스를 가져옵니다.계산된 속성인 경우 기본 클래스가 다릅니다. |
![]() ![]() |
GetBaseRelationship | 도메인 관계의 기본 관계를 선언하기 위한 문자열을 가져옵니다.기본 클래스가 정의되지 않은 경우 ElementLink가 사용됩니다. |
![]() ![]() |
GetBaseRole | 지정된 역할의 기본 역할을 가져옵니다(있는 경우).그렇지 않은 경우 null을 반환합니다. |
![]() ![]() |
GetCamelCase | 첫 번째 문자를 소문자로 바꿔 입력 문자열을 카멜식 소문자로 변환합니다. |
![]() ![]() |
GetDesigner | 지정된 DslLibrary에 정의된 Designer를 가져옵니다. |
![]() ![]() |
GetDiagramElementForDecoratorMap | 데코레이터 맵을 정의하는 셰이프나 연결선 맵과 관련된 다이어그램 요소를 가져옵니다. |
![]() ![]() |
GetDomainClassMonikerSchemaTypeName | 지정된 도메인 클래스에 대한 모니커 스키마 형식 이름을 가져옵니다. |
![]() ![]() |
GetDomainClassMonikerTagName(DomainClass, String) | 모니커로 serialize될 때 도메인 클래스의 MonikerTagName을 가져옵니다.태그 이름은 모니커에 대해 같을 수 없습니다. 이 이름은 생성된 스키마 내 같은 요소에서 두 가지 정의를 필요로 하기 때문입니다."XmlClassData.MonikerElementName"을 사용하여 지정하지 않은 경우 사용되는 기본 이름은 모니커가 아닌 XmlTagName이고 뒤에 "Moniker"가 옵니다. |
![]() ![]() |
GetDomainClassMonikerTagName(DomainClass, String, Dictionary<DslLibrary, String>) | 모니커로 serialize될 때 도메인 클래스의 MonikerTagName을 가져옵니다.태그 이름은 모니커에 대해 같을 수 없습니다. 이 이름은 생성된 스키마 내 같은 요소에서 두 가지 정의를 필요로 하기 때문입니다."XmlClassData.MonikerElementName"을 사용하여 지정하지 않은 경우 사용되는 기본 이름은 모니커가 아닌 XmlTagName이고 뒤에 "Moniker"가 옵니다. |
![]() ![]() |
GetDomainClassSchemaTypeName | 지정된 도메인 클래스에 대한 스키마 형식 이름을 가져옵니다. |
![]() ![]() |
GetDomainClassXmlTagName(DomainClass, String) | 도메인 클래스에 대한 XmlTagName을 가져옵니다. |
![]() ![]() |
GetDomainClassXmlTagName(DomainClass, String, Dictionary<DslLibrary, String>) | 도메인 클래스에 대한 XmlTagName을 가져옵니다. |
![]() ![]() |
GetDomainTypeFullName(DomainProperty) | 속성의 클래스에 대한 네임스페이스를 기준으로 DomainProperty 형식의 전체 이름(제네릭 매개 변수 포함)을 가져옵니다. |
![]() ![]() |
GetDomainTypeFullName(DomainType, String) | 지정된 현재 네임스페이스를 기준으로 DomainType의 전체 이름(제네릭 매개 변수 포함)을 가져옵니다. |
![]() ![]() |
GetElementProperties | 중첩 XML 요소로 serialize될 지정된 DomainClass에 정의된 모든 DomainProperties를 반환합니다. |
![]() ![]() |
GetGeneratedLinkAccessModifier | 전달된 DomainRelationship 및 해당 역할 수행자에 간의 가장 제한적인 형식 액세스 한정자를 반환합니다. |
![]() ![]() |
GetGeneratedPropertyGetterAccessModifier | DomainRelationship 클래스의 Get/Set 속성에 사용될 getter 속성 한정자 반환 |
![]() ![]() |
GetGeneratedPropertySetterAccessModifier | DomainRelationship 클래스의 Get/Set 속성에 사용될 setter 속성 한정자 반환 |
![]() ![]() |
GetGenerationClassName | 생성할 클래스의 이름을 반환합니다.이중 파생 클래스의 경우 도메인 클래스 이름에 'Base'를 추가합니다.그렇지 않으면 도메인 클래스의 이름이 사용됩니다. |
![]() ![]() |
GetGenerationInheritanceModifier | 도메인 클래스의 클래스 한정자를 가져옵니다.이중 파생된 쌍에서 생성된 클래스(기본 클래스)는 언제나 추상적이므로 클래스가 이중 파생 클래스인 경우 "abstract"를 반환합니다. |
![]() ![]() |
GetGuid | xxx가 지정한 guid의 문자열 폼인 지점에서 "new System.Guid(xxx)" 폼의 문자열을 반환합니다. |
![]() ![]() |
GetInheritanceModifier | 지정된 InheritanceModifier 열거형에 대한 C# 한정자 키워드를 가져옵니다. |
![]() ![]() |
GetMethodModifier | 지정된 매개 변수를 사용하여 생성된 코드의 메서드 한정자(가상, 재정의 등)를 가져옵니다. |
![]() ![]() |
GetModelElementDomainClass | ModelElement를 나타내는 DomainClass 반환 |
![]() ![]() |
GetNameProperty | 사용자에 대한 요소를 식별하는 데 사용할 수 있는 속성(이 클래스 또는 기본 클래스)을 반환합니다.IsElementName이 표시된 속성을 반환합니다.아무 것도 없으면 IsMonikerKey가 표시된 속성을 반환합니다.아무 것도 없으면 null을 반환합니다. |
![]() ![]() |
GetPackageNamespace | 지정된 Dsl에 대한 Dsl 패키지 이름을 가져옵니다. |
![]() ![]() |
GetPropertyDefaultValue | 속성의 기본값을 선언하기 위한 문자열을 반환합니다("= defaultValue" 형식). |
![]() ![]() |
GetPropertyDefaultValueAttribute | System.ComponentModel.DefaultValueAttribute의 생성자에 대한 문자열을 가져옵니다. |
![]() ![]() |
GetPropertyHandlerName | 속성의 속성 처리기 이름을 가져옵니다. |
![]() ![]() |
GetPropertyKind | DomainPropertyAttribute 생성자에 대한 속성 종류에 대해 문자열을 반환합니다. |
![]() ![]() |
GetPropertyRepresentation | 지정된 DomainProperty의 PropertyRepresentation(Attribute, Element 또는 Ignored)을 가져옵니다.지정되지 않은 경우 기본값은 특성입니다. |
![]() ![]() |
GetPropertyTagName | 지정된 DomainProperty의 XML 태그 이름을 가져옵니다.태그 이름은 속성이 XML 특성으로 serialize된 경우에는 XML 특성 이름이며 중첩된 XML 요소로 serialize된 경우에는 XML 요소 이름입니다. |
![]() ![]() |
GetRelationshipTagName | 지정된 역할의 관계에 대한 XML 역할 요소 이름을 가져옵니다.참고: GetDomainClassXmlTagName()에서 반환되는 전체 폼 관계의 XML 태그 이름이 아닌 RoleElementName(정의된 경우)입니다. |
![]() ![]() |
GetSameNameBaseRole | 지정한 역할과 같은 이름을 가진 경우 지정한 역할의 기본 역할을 반환합니다. |
![]() ![]() |
GetSegmentInputType(PathSegment) | 주어진 pathSegment에 대해 이 메서드는 입력 정규화된 형식 이름을 반환합니다. |
![]() ![]() |
GetSegmentInputType(PathSegment, Boolean) | 주어진 pathSegment에 대해 이 메서드는 입력 정규화된 형식 이름을 반환합니다. |
![]() ![]() |
GetSegmentOutputType(PathSegment) | 주어진 pathSegment에 대해 이 메서드는 출력 정규화된 형식 이름을 반환합니다. |
![]() ![]() |
GetSegmentOutputType(PathSegment, Boolean) | 주어진 pathSegment에 대해 이 메서드는 출력 정규화된 형식 이름을 반환합니다. |
![]() ![]() |
GetSerializedDomainClasses | serializer가 생성될 주어진 DslLibrary의 모든 DomainClasses 목록을 가져옵니다. |
![]() ![]() |
GetTypeAccessModifier | 지정된 TypeAccessModifier 열거형에 대한 C# 액세스 한정자 키워드를 가져옵니다. |
![]() ![]() |
GetTypeRole | 이 역할에 대해 생성된 속성의 형식을 결정하는 역할을 가져옵니다.이 역할과 이름이 동일한 가장 기본 역할입니다. |
![]() ![]() |
GetVersionString | DslLibrary의 버전을 문자열 형식으로 가져옵니다. |
![]() ![]() |
GetXmlSchemaNamespace | 생성된 스키마에 사용할 XML 네임스페이스를 가져옵니다. |
![]() ![]() |
HasCompartmentMaps | 지정된 다이어그램이 CompartmentMaps를 정의하면 true입니다. |
![]() ![]() |
HasCustomBaseImplementation | 사용되지 않습니다. 지정한 DomainClass(또는 기본 DomainClass 중 하나)가 "IsCustom"으로 표시되어 있는지 여부(즉, serialization이 사용자 지정된 상태임을 의미) |
![]() ![]() |
HasCustomTypeDescriptor | 지정된 클래스에 정의된 사용자 지정 형식 설명자가 있는 경우 true를 반환하고 그렇지 않은 경우 false를 반환합니다. |
![]() ![]() |
HasNonAbstractBaseClass | 지정된 DomainClass에 비추상 기본 클래스가 있을 경우 알려줍니다.생성되어야 하는 "new" 키워드가 있는지 여부를 결정할 필요가 있습니다. |
![]() ![]() |
IsCoreDomainModel | 제공된 클래스가 핵심 도메인 모델인지 여부를 반환 |
![]() ![]() |
IsElementLinkDomainClass | 제공된 도메인 클래스가 "ElementLink"를 나타내는지 여부를 반환합니다. |
![]() ![]() |
IsGuidType | typeName이 Guid("System.Guid")를 나타내는 경우 true 반환 |
![]() ![]() |
IsInCoreDomainModel | 제공된 클래스가 핵심 도메인 모델의 일부인지 여부를 반환 |
![]() ![]() |
IsLaxElementSchemaRequired | 클래스에 대해 lax 요소 스키마 형식 정의가 필요한지 여부 |
![]() ![]() |
IsModelElementDomainClass | 제공된 도메인 클래스가 "ModelElement"를 나타내는지 여부를 반환합니다. |
![]() ![]() |
IsMultiple | 지정된 복합성의 위쪽 범위가 *이면 true를 반환합니다. |
![]() ![]() |
IsOuterDecorator(DiagramElementHasDecorators) | 지정된 링크가 외부 decorator를 연결하는 경우 true를 반환합니다. |
![]() ![]() |
IsOuterDecorator(ShapeDecoratorPosition) | 지정된 ShapeDecorationPosition이 외부 decorator인 경우 true를 반환합니다. |
![]() ![]() |
IsRootClass | DomainClass가 루트 클래스이면 모든 serialization 관련 메서드/속성이 가상이고(봉인되지 않은 경우), 그렇지 않으면 이러한 메서드/속성이 "재정의"이고 기본 구현을 호출합니다.현재, DomainClass는 Microsoft.VisualStudio.Modeling.ModelElement 또는 Microsoft.VisualStudio.Modeling.ElementLink directly에서 파생되는 경우 루트 클래스입니다. |
![]() ![]() |
IsStringProperty | 속성이 형식 문자열이면 true를 반환합니다. |
![]() ![]() |
IsStringType | typeName이 문자열("string" 또는 "System.String")을 나타내는 경우 true 반환 |
![]() ![]() |
MapToSchemaType | DomainType을 해당 스키마 형식으로 매핑합니다. |
![]() ![]() |
OmitElement | 지정된 DomainRelationship이 "OmitElement"(역할 요소 태그 없이)로 serialize될 경우 가져옵니다. |
![]() ![]() |
RequiresGeneratedPropertyDescriptor | 지정된 설명자가 PropertyDescriptor 파생 클래스를 생성하도록 요청하는 경우 true를 반환하고 그렇지 않은 경우 false를 반환합니다. |
![]() ![]() |
SortDomainClassesByInheritance<T> | 상대 상속 관계에 따라 DomainClass 컬렉션을 정렬합니다.정렬 결과 가장 많이 파생된 항목이 처음 나타납니다.예를 들어, 4개의 DomainClasses A, B, C 및 D가 있는 경우에 사용됩니다.다음과 같은 일부 코드를 생성 해야 합니다:...A a = obj as A; if (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) ... ...C가 A에서 파생되는 경우 위의 코드는 잘못되었습니다. 올바른 코드에서는 A에 대한 검사 전에 C에 대해 검사해야 합니다.따라서 이 메서드는 상속 순서대로 정렬된 DomainClasse로 호출되어야 하며 생성된 코드는 다음과 같습니다.C c = obj as C; if (c != null) ...A a = obj as A; if (a != null) ...B b = obj as B; if (b != null) ...D d = obj as D; if (d != null) ... ... |
![]() ![]() |
SortProperties | XmlElement.Order(지정된 경우)에 따라 DomainProperty를 정렬합니다.기본적으로 각 속성의 순서는 0입니다.작은 순서를 사용하는 속성을 먼저 표시합니다.순서 대로의 속성 (예: 정렬 됩니다. 거 잘 상대적인 순서 정렬 한 후).정렬이 in-place이므로 passed-in 컬렉션이 직접 변경됩니다. |
![]() ![]() |
SortRoles | XmlRelationshipElement.Order(지정된 경우)에 따라 DomainRole을 정렬합니다.기본적으로 각 역할의 순서는 0입니다.작은 순서를 사용하는 역할을 먼저 표시합니다.순서 대로의 역할 (예: 정렬 됩니다. 거 잘 상대적인 순서 정렬 한 후).정렬이 in-place이므로 passed-in 컬렉션이 직접 변경됩니다. |
![]() ![]() |
UseFullForm | 지정된 DomainRelationship이 전체 형식으로 serialize될 경우 가져옵니다. |
![]() ![]() |
WrapAsCSharpString | C# 구문에서는 주어진 문자열을 문자열 리터럴에 래핑합니다. |
위쪽
필드
이름 | 설명 | |
---|---|---|
![]() ![]() |
CoreDomainModelNamespacePrefix |
위쪽
스레드로부터의 안전성
이 형식의 모든 공용 static(Visual Basic의 경우 Shared) 멤버는 스레드로부터 안전합니다. 인터페이스 멤버는 스레드로부터 안전하지 않습니다.