Metodo RequiresProvidesDirectiveProcessor.GenerateTransformCode
Una volta sottoposto a override in una classe derivata, aggiungere il codice alla classe della trasformazione generata.
Spazio dei nomi: Microsoft.VisualStudio.TextTemplating
Assembly: Microsoft.VisualStudio.TextTemplating.11.0 (in Microsoft.VisualStudio.TextTemplating.11.0.dll)
Sintassi
'Dichiarazione
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>
)
Parametri
- directiveName
Tipo: System.String
Il nome della direttiva.
- codeBuffer
Tipo: System.Text.StringBuilder
Il buffer che concatena il codice che questo processore di direttiva aggiunge alla classe della trasformazione generata durante l'esecuzione di elaborazione.
- languageProvider
Tipo: System.CodeDom.Compiler.CodeDomProvider
Il generatore di codice che crea il codice per aggiungere codeBuffer.
- requiresArguments
Tipo: System.Collections.Generic.IDictionary<String, String>
i parametri standard che il processore di direttiva richiede.
- providesArguments
Tipo: System.Collections.Generic.IDictionary<String, String>
I parametri standard che il processore di direttiva.
Note
Questa operazione viene denominata da ProcessDirective.
Esempi
In questo esempio genera codice per il processore di direttiva.Questo esempio di codice fa parte di un esempio più esaustivo fornito per RequiresProvidesDirectiveProcessor classe.
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 + "; } }");
}
Sicurezza di .NET Framework
- Attendibilità totale per il chiamante immediato. Impossibile utilizzare questo membro in codice parzialmente attendibile. Per ulteriori informazioni, vedere Utilizzo di librerie da codice parzialmente attendibile.
Vedere anche
Riferimenti
RequiresProvidesDirectiveProcessor Classe
Spazio dei nomi Microsoft.VisualStudio.TextTemplating