CodeGenerationUtilities クラス

コード生成のテンプレートで使用されるユーティリティ

継承階層

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

名前空間:  Microsoft.VisualStudio.Modeling.DslDefinition
アセンブリ:  Microsoft.VisualStudio.Modeling.Sdk.DslDefinition.11.0 (Microsoft.VisualStudio.Modeling.Sdk.DslDefinition.11.0.dll 内)

構文

'宣言
Public NotInheritable Class CodeGenerationUtilities
public static class CodeGenerationUtilities

CodeGenerationUtilities 型で公開されるメンバーは以下のとおりです。

メソッド

  名前 説明
パブリック メソッド静的メンバー AddSerializationResourceStrings 生成されたシリアライザーに使用する追加のリソース文字列。ここに追加する文字列はローカライズする resx ファイルを生成するために使用されるため、ローカライズされません。
パブリック メソッド静的メンバー AllowMultiple 特定のロールに複数のインスタンスを使用できる場合、多重度に基づいて取得します。
パブリック メソッド静的メンバー CalculateInheritanceDepth DomainClass を指定すると、生成されたコード (二重派生クラスの基本考慮に入れること) の継承の深さを計算します。これにより、追加の 「継承」の SuppressMessage 属性が必要かどうかを確認するために使用されます。
パブリック メソッド静的メンバー CreateXmlNamespaceQualifiers dslLibrary と 1 番目のレベルでインポート ライブラリの xmlNamespaceQualifiers を作成します。
パブリック メソッド静的メンバー DefinesDiagramElements 別の方法で特定の DslLibrary 定義する場合は、図の要素を調整します。図の要素 (1 種類が定義されている場合) DslLibrary.DiagramElements に含まれる図の要素です。
パブリック メソッド静的メンバー DefinesNewTargetRole リレーションシップの派生では、リレーションシップが親関係とターゲットのロール プレーヤーを使用するか、定義から派生) 新しい (親関係の対象のロールからプレーヤーできます。このメソッドは、指定した DomainRelationship が新しいターゲットのロール プレーヤーを定義するかどうかを示します。
パブリック メソッド静的メンバー GenerateFontStyle フォントのスタイルを初期化するための正しい構文を作成します。
パブリック メソッド静的メンバー GetAccessModifier AccessModifier の列挙に対して C# のキーワードは、アクセス修飾子を取得します
パブリック メソッド静的メンバー GetAttributeProperties XML 属性としてシリアル化する特定の DomainClass で定義されているすべての DomainProperties を返します。
パブリック メソッド静的メンバー GetBaseClass ドメイン クラスの基本クラスを宣言するための文字列を取得します。基本クラスが定義されていない場合、ModelElement が使用されます。
パブリック メソッド静的メンバー GetBaseDomainClass 指定されたクラスのドメイン クラスを取得します
パブリック メソッド静的メンバー GetBaseDomainClassMonikerSchemaTypeName 指定したドメイン クラスの基本クラスのモニカー スキーマ型の名前を取得します。
パブリック メソッド静的メンバー GetBaseDomainClassMonikerTagName モニカーとしてシリアル化する場合の MonikerTagName に指定されたドメイン クラスの基本クラスを派生します。これは生成されたスキーマ内の同じ要素の 2 種類の定義を必要とするため、タグ名がモニカーの同じできないことに注意してください。(「」 XmlClassData.MonikerElementName を使用して示されていません) を使用した既定の名前は、モニカー」 「に続けて、モニカー XmlTagName です。
パブリック メソッド静的メンバー GetBaseDomainClassSchemaTypeName 指定したドメイン クラスの基本クラス型のスキーマの名前を取得します。
パブリック メソッド静的メンバー GetBaseDomainClassXmlTagName 指定したドメイン クラスの基本クラスの XmlTagName を取得します。
パブリック メソッド静的メンバー GetBasePropertyHandlerName 指定したプロパティの PropertyHandler の基本クラスを取得します。基本クラスは、計算されたプロパティとは異なります。
パブリック メソッド静的メンバー GetBaseRelationship ドメイン リレーションシップの基本関係を宣言するための文字列を取得します。基本クラスが定義されていない場合、ElementLink が使用されます。
パブリック メソッド静的メンバー GetBaseRole 1 の場合、特定のロール ベースのロールを取得します。一致しない場合は、null を返します。
パブリック メソッド静的メンバー GetCamelCase Conver、大文字と小文字の区別に、Camel 形式の例を入力文字列の最初の文字
パブリック メソッド静的メンバー GetDesigner デザイナーを特定の DslLibrary で定義されたを取得します。
パブリック メソッド静的メンバー GetDiagramElementForDecoratorMap 図の要素をデコレータ マップを定義するシェイプまたはコネクタのマップに関連付けられているを取得します。
パブリック メソッド静的メンバー GetDomainClassMonikerSchemaTypeName 指定したドメイン クラスのモニカー スキーマ型の名前を取得します。
パブリック メソッド静的メンバー GetDomainClassMonikerTagName(DomainClass, String) モニカーとしてシリアル化する場合は、ドメイン クラスの MonikerTagName を取得します。これは生成されたスキーマ内の同じ要素の 2 種類の定義を必要とするため、タグ名がモニカーの同じできないことに注意してください。(「」 XmlClassData.MonikerElementName を使用して示されていません) を使用した既定の名前は、モニカー」 「に続けて、モニカー XmlTagName です。
パブリック メソッド静的メンバー GetDomainClassMonikerTagName(DomainClass, String, Dictionary<DslLibrary, String>) モニカーとしてシリアル化する場合は、ドメイン クラスの MonikerTagName を取得します。これは生成されたスキーマ内の同じ要素の 2 種類の定義を必要とするため、タグ名がモニカーの同じできないことに注意してください。(「」 XmlClassData.MonikerElementName を使用して示されていません) を使用した既定の名前は、モニカー」 「に続けて、モニカー XmlTagName です。
パブリック メソッド静的メンバー GetDomainClassSchemaTypeName 指定したドメイン クラスのスキーマ型の名前を取得します。
パブリック メソッド静的メンバー GetDomainClassXmlTagName(DomainClass, String) ドメイン クラスの XmlTagName を取得します。
パブリック メソッド静的メンバー GetDomainClassXmlTagName(DomainClass, String, Dictionary<DslLibrary, String>) ドメイン クラスの XmlTagName を取得します。
パブリック メソッド静的メンバー GetDomainTypeFullName(DomainProperty) クラスの名前空間に対する DomainProperty の型の完全名 (を含むジェネリック パラメーター) を取得します。
パブリック メソッド静的メンバー GetDomainTypeFullName(DomainType, String) 特定の現在の名前空間に対する DomainType の完全名 (を含むジェネリック パラメーター) を取得します。
パブリック メソッド静的メンバー GetElementProperties 入れ子になった XML 要素としてシリアル化する特定の DomainClass で定義されているすべての DomainProperties を返します。
パブリック メソッド静的メンバー GetGeneratedLinkAccessModifier DomainRelationship とロール プレーヤーに渡される内の最も限定型のアクセス修飾子を返します。
パブリック メソッド静的メンバー GetGeneratedPropertyGetterAccessModifier DomainRelationship クラスで Get/Set プロパティの取得に使用するプロパティの修飾子を返します。
パブリック メソッド静的メンバー GetGeneratedPropertySetterAccessModifier DomainRelationship クラスで Get/Set プロパティに使用する setter のプロパティで修飾子を返します。
パブリック メソッド静的メンバー GetGenerationClassName 生成されるクラスの名前を返します。の派生クラスの場合は、「ドメイン クラスの名前に Base を追加します。そうでない場合は、ドメイン クラスの名前が使用されます。
パブリック メソッド静的メンバー GetGenerationInheritanceModifier ドメイン クラスのクラスの修飾子を取得します。は、二重 「派生ペアで生成されるクラス (基本クラス) が抽象的であるため、クラスが派生クラスで抽出します」
パブリック メソッド静的メンバー GetGuid xxx が特定の GUID の文字列である場合に、「新しい System.Guid の文字列 () xxx 」返します。
パブリック メソッド静的メンバー GetInheritanceModifier InheritanceModifier の列挙に対して C# のキーワード修飾子を取得します
パブリック メソッド静的メンバー GetMethodModifier 特定のパラメーターで生成されたコードにメソッドの修飾子 (、仮想オーバーライドなど) を取得します。
パブリック メソッド静的メンバー GetModelElementDomainClass ModelElement を表すを返します DomainClass
パブリック メソッド静的メンバー GetNameProperty ユーザーが要素を idenfify ために使用できるプロパティを取得します (これは、基本クラス)。プロパティに指定された IsElementName を返します。見つからない場合は、プロパティに指定された IsMonikerKey を返します。ステートメントが見つからなかった場合、は null を返します。
パブリック メソッド静的メンバー GetPackageNamespace 特定の Dsl の Dsl パッケージ名を取得します。
パブリック メソッド静的メンバー GetPropertyDefaultValue 文字列をプロパティの既定値を宣言する形式で返します (「 = 」 defaultValue
パブリック メソッド静的メンバー GetPropertyDefaultValueAttribute System.ComponentModel.DefaultValueAttribute のコンストラクターの文字列を取得します。
パブリック メソッド静的メンバー GetPropertyHandlerName プロパティのプロパティ ハンドラーの名前を取得します
パブリック メソッド静的メンバー GetPropertyKind DomainPropertyAttribute のコンストラクターのプロパティの種類の種類の文字列を返します。
パブリック メソッド静的メンバー GetPropertyRepresentation 特定の DomainProperty の PropertyRepresentation (要素、属性、または無視します) を取得します。既定値は指定されていない属性です。
パブリック メソッド静的メンバー GetPropertyTagName 特定の DomainProperty XML タグ名を取得します。タグ名は、プロパティが入れ子になった XML 要素としてシリアル化された場合に、プロパティが XML 属性としてシリアル化されている場合、または XML 要素の名前とまたは XML 属性の名前。
パブリック メソッド静的メンバー GetRelationshipTagName 特定のロールのリレーションシップの XML 要素名のロールを取得します。メモ : これは RoleElementName 定義 (存在する場合)、(GetDomainClassXmlTagName () にある XML タグ名から返される)、フォームのリレーションシップです。
パブリック メソッド静的メンバー GetSameNameBaseRole 特定のロールと同じ名前の場合、特定のロール ベースのロールを返します
パブリック メソッド静的メンバー GetSegmentInputType(PathSegment) 特定の pathSegment の場合、このメソッドは入力完全修飾型名。
パブリック メソッド静的メンバー GetSegmentInputType(PathSegment, Boolean) 特定の pathSegment の場合、このメソッドは入力完全修飾型名。
パブリック メソッド静的メンバー GetSegmentOutputType(PathSegment) 特定の pathSegment の場合、このメソッドは出力の完全修飾型名。
パブリック メソッド静的メンバー GetSegmentOutputType(PathSegment, Boolean) 特定の pathSegment の場合、このメソッドは出力の完全修飾型名。
パブリック メソッド静的メンバー GetSerializedDomainClasses 生成されたシリアライザーが特定の DslLibrary にすべての DomainClasses のリストを取得します。
パブリック メソッド静的メンバー GetTypeAccessModifier TypeAccessModifier の列挙に対して C# のキーワードは、アクセス修飾子を取得します
パブリック メソッド静的メンバー GetTypeRole このロールに対して生成されたプロパティの型を決定するロールを取得します。これは、このロールと同じ名前を持つ最もベースの役割です。
パブリック メソッド静的メンバー GetVersionString 文字列の DslLibrary のバージョンを取得します。
パブリック メソッド静的メンバー GetXmlSchemaNamespace 生成されたスキーマに使用する XML 名前空間を取得します。
パブリック メソッド静的メンバー HasCompartmentMaps 特定の図を CompartmentMaps が定義されている場合は true。
パブリック メソッド静的メンバー HasCustomBaseImplementation 互換性のために残されています。特定の DomainClass (またはベース DomainClasses では) としてシリアル化を意味する 「マークされているかどうか IsCustom 」は、カスタマイズします。
パブリック メソッド静的メンバー HasCustomTypeDescriptor 特定のクラスに定義されているカスタム型記述子が存在する場合は true、それ以外の場合は false を返します。
パブリック メソッド静的メンバー HasNonAbstractBaseClass 特定の DomainClass に非抽象型の基本クラスであるかどうかを指定します。必要は 「新しい」キーワードを生成する必要があるかどうかを確認するために使用されます。
パブリック メソッド静的メンバー IsCoreDomainModel 指定されたクラスは、コア ドメイン モデルであるかどうかを返します
パブリック メソッド静的メンバー IsElementLinkDomainClass 指定したドメイン クラスは 「」 ElementLink を表すかどうかを返します。
パブリック メソッド静的メンバー IsGuidType 型名は、System.Guid GUID (「」) を表している場合、true を返します
パブリック メソッド静的メンバー IsInCoreDomainModel 指定されたクラスは、コア ドメイン モデルの一部であるかどうかを返します
パブリック メソッド静的メンバー IsLaxElementSchemaRequired Loose スキーマ要素の型定義は、クラスに必要かどうか
パブリック メソッド静的メンバー IsModelElementDomainClass 指定したドメイン クラスは 「」 ModelElement を表すかどうかを返します。
パブリック メソッド静的メンバー IsMultiple 特定の多重度の上限がある場合に true を返します。*
パブリック メソッド静的メンバー IsOuterDecorator(DiagramElementHasDecorators) 特定のリンクが外部デコレータに接続した場合は true を返します。
パブリック メソッド静的メンバー IsOuterDecorator(ShapeDecoratorPosition) 特定の ShapeDecorationPosition が外部デコレータ場合、true を返します。
パブリック メソッド静的メンバー IsRootClass DomainClass はルートのクラスの場合、(シールしない場合)。シリアル化に関連するメソッドとプロパティはすべて仮想です。; それ以外の場合は、次のメソッドやプロパティが 「オーバーライド」は、の基本実装です。現在、DomainClass は Microsoft.VisualStudio.Modeling.ModelElement または Microsoft.VisualStudio.Modeling.ElementLink ルートから直接派生クラスです。
パブリック メソッド静的メンバー IsStringProperty プロパティは文字列型の場合に true を返します。
パブリック メソッド静的メンバー IsStringType 型名は文字列 (「文字列」または 「 System.String 」) を表している場合、true を返します
パブリック メソッド静的メンバー MapToSchemaType スキーマ型に DomainType をマップします。
パブリック メソッド静的メンバー OmitElement 特定の DomainRelationship 「」を OmitElement としてシリアル化された要素タグのロールを取得します (なし)。
パブリック メソッド静的メンバー RequiresGeneratedPropertyDescriptor 特定の記述子は PropertyDescriptor の派生クラスを生成するように要求した場合は true。それ以外の場合は false を返します。
パブリック メソッド静的メンバー SortDomainClassesByInheritance<T> DomainClasses のコレクションに基づいて相対的な継承関係に並べ替えます。は、最派生 1 つが並べ替え結果の先頭に表示されます。これは、次の状況で使用されています : 4 DomainClasses 12 A、B、C 15 および 17 C があるとします。次のようなコードを生成する必要があります : …obj = A として ; (! = null)] (b = 12 C として obj; (b)= null)] 15 C、D = 15 として obj; (c! = null)] d 17 C = 17 C として obj; (d! = null)] ...15 C ではから派生するため、上記のコードが正しくない ; 正しいコードは 15 C が A. を確認する前に最初に確認する必要があります。そのため、継承した並べ替えの順序で DomainClasses このメソッドは、を呼び出すことで、生成されたコードになります。: …15 C、D = 15 として obj; (c! = null)] obj = A として ; (! = null)] (b = 12 C として obj; (b)= null)] d 17 C = 17 C として obj; (d! = null)] ...
パブリック メソッド静的メンバー SortProperties 指定されている場合) XmlElement.Order に基づいて DomainProperties の並べ替え (してください。既定では、各プロパティの順序は 0 です。小さい順序のプロパティは、最初に表示されます。順序のプロパティは並べ替えられません (つまり。これらは、並べ替えの後に相対順序が維持されます)。並べ替えは、埋め込み先であるため、コレクション呼び出しで直接変更されます。
パブリック メソッド静的メンバー SortRoles 指定されている場合) XmlRelationshipElement.Order に基づく並べ替え (DomainRoles。既定では、各ロールの順序は 0 です。小さい順序のロールは先頭に表示されます。順序のロールは並べ替えられません (つまり。これらは、並べ替えの後に相対順序が維持されます)。並べ替えは、埋め込み先であるため、コレクション呼び出しで直接変更されます。
パブリック メソッド静的メンバー UseFullForm 特定の DomainRelationship は、形式でシリアル化されている取得します。
パブリック メソッド静的メンバー WrapAsCSharpString C# の構文の文字列に指定された文字列をラップします。

このページのトップへ

フィールド

  名前 説明
パブリック フィールド静的メンバー CoreDomainModelNamespacePrefix

このページのトップへ

スレッド セーフ

この型のすべてのパブリック static (Visual Basic では Shared) メンバーは、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

参照

関連項目

Microsoft.VisualStudio.Modeling.DslDefinition 名前空間