RequiresProvidesDirectiveProcessor.GenerateTransformCode メソッド
派生クラスでオーバーライドされると、生成された変換クラスにコードを追加します。
名前空間: Microsoft.VisualStudio.TextTemplating
アセンブリ: Microsoft.VisualStudio.TextTemplating.10.0 (Microsoft.VisualStudio.TextTemplating.10.0.dll 内)
構文
'宣言
Protected MustOverride Sub GenerateTransformCode ( _
directiveName As String, _
codeBuffer As StringBuilder, _
languageProvider As CodeDomProvider, _
requiresArguments As IDictionary(Of String, String), _
providesArguments As IDictionary(Of String, String) _
)
protected abstract void GenerateTransformCode(
string directiveName,
StringBuilder codeBuffer,
CodeDomProvider languageProvider,
IDictionary<string, string> requiresArguments,
IDictionary<string, string> providesArguments
)
protected:
virtual void GenerateTransformCode(
String^ directiveName,
StringBuilder^ codeBuffer,
CodeDomProvider^ languageProvider,
IDictionary<String^, String^>^ requiresArguments,
IDictionary<String^, String^>^ providesArguments
) abstract
abstract GenerateTransformCode :
directiveName:string *
codeBuffer:StringBuilder *
languageProvider:CodeDomProvider *
requiresArguments:IDictionary<string, string> *
providesArguments:IDictionary<string, string> -> unit
protected abstract function GenerateTransformCode(
directiveName : String,
codeBuffer : StringBuilder,
languageProvider : CodeDomProvider,
requiresArguments : IDictionary<String, String>,
providesArguments : IDictionary<String, String>
)
パラメーター
- directiveName
型: System.String
ディレクティブの名前。
- codeBuffer
型: System.Text.StringBuilder
処理実行中にこのディレクティブ プロセッサが生成された変換クラスに追加するコードを連結するバッファー。
- languageProvider
型: System.CodeDom.Compiler.CodeDomProvider
codeBuffer. に追加するコードを作成するコード ジェネレーター。
- requiresArguments
型: System.Collections.Generic.IDictionary<String, String>
ディレクティブ プロセッサで必要な標準パラメーター。
- providesArguments
型: System.Collections.Generic.IDictionary<String, String>
ディレクティブ プロセッサで提供される標準パラメーター。
解説
これは、ProcessDirective によって呼び出されます。
例
この例では、ディレクティブ プロセッサのコードを生成します。 このコード例は、RequiresProvidesDirectiveProcessor クラスのトピックで示されているコード例の一部分です。
protected override void GenerateTransformCode(string directiveName, StringBuilder codeBuffer, System.CodeDom.Compiler.CodeDomProvider languageProvider, IDictionary<string, string> requiresArguments, IDictionary<string, string> providesArguments)
{
// Write code to create a property backed by a field of type XmlDocument.
// The property is named "Dom" by default but the template writer may have changed the name using a custom provides clause like 'provides="Dom=AnotherName"'
string fieldName = providesArguments[DomProvidedParameterName].ToLower(CultureInfo.InvariantCulture) + "Value";
string propertyName = providesArguments[DomProvidedParameterName];
codeBuffer.Append(
"XmlDocument " + fieldName + ";" +
"XmlDocument " + propertyName +
"{ get { return this." + fieldName + "; } }");
}
.NET Framework セキュリティ
- 直前の呼び出し元に対する完全な信頼。 このメンバーは、部分的に信頼されているコードから使用することはできません。 詳細については、「部分信頼コードからのライブラリの使用」を参照してください。
参照
参照
RequiresProvidesDirectiveProcessor クラス
Microsoft.VisualStudio.TextTemplating 名前空間