ITextTemplatingEngineHost.ResolveDirectiveProcessor (Método)
Devuelve el tipo de un procesador de directivas, dado su nombre descriptivo.
Espacio de nombres: Microsoft.VisualStudio.TextTemplating
Ensamblado: Microsoft.VisualStudio.TextTemplating.Interfaces.10.0 (en Microsoft.VisualStudio.TextTemplating.Interfaces.10.0.dll)
Sintaxis
'Declaración
Function ResolveDirectiveProcessor ( _
processorName As String _
) As Type
Type ResolveDirectiveProcessor(
string processorName
)
Type^ ResolveDirectiveProcessor(
String^ processorName
)
abstract ResolveDirectiveProcessor :
processorName:string -> Type
function ResolveDirectiveProcessor(
processorName : String
) : Type
Parámetros
- processorName
Tipo: System.String
El nombre del procesador de directivas que se va a resolver.
Valor devuelto
Tipo: System.Type
El objeto Type del procesador de directivas.
Comentarios
El motor llama a este método basado en las directivas que el usuario ha especificado en la plantilla de texto.Se puede llamar a este método 0, 1 o varias veces, para cada transformación de plantilla de texto.Para obtener más información, vea Directivas de plantilla de texto T4.
Si no se puede resolver el nombre del procesador de directivas, este método debería producir una excepción.
Si el mecanismo que utiliza el host para encontrar un procesador de directivas en el método ResolveDirectiveProcessor no es seguro, se podría ejecutar un procesador de directivas malintencionado.El procesador de directivas malintencionadas podría proporcionar código que se ejecuta en el modo de plena confianza cuando se ejecuta la plantilla.Si crea un host personalizado, debe utilizar un mecanismo seguro, como el Registro, para buscar los procesadores de directivas.Para obtener más información, vea Seguridad de las plantillas de texto.
Ejemplos
El ejemplo de código siguiente muestra una posible implementación para un host personalizado.Este ejemplo de código forma parte de un ejemplo más extenso relativo a la interfaz ITextTemplatingEngineHost.
Para obtener un ejemplo más detallado que muestra cómo resolver una solicitud para un procesador de directivas generado, vea Tutorial: Conectar un host a un procesador de directivas personalizadas.
public Type ResolveDirectiveProcessor(string processorName)
{
//this host will not resolve any specific processors
//check the processor name, and if it is the name of a processor the
//host wants to support, return the type of the processor
//---------------------------------------------------------------------
if (string.Compare(processorName, "XYZ", StringComparison.OrdinalIgnoreCase) == 0)
{
//return typeof();
}
//this can be customized to search specific paths for the file,
//or to search the GAC
//if the directive processor can not be found, throw an error
throw new Exception("Directive Processor not found");
}
Public Function ResolveDirectiveProcessor(ByVal processorName As String) As System.Type Implements Microsoft.VisualStudio.TextTemplating.ITextTemplatingEngineHost.ResolveDirectiveProcessor
'this host will not resolve any specific processors
'check the processor name, and if it is the name of a processor the
'host wants to support, return the type of the processor
'---------------------------------------------------------------------
If String.Compare(processorName, "XYZ", StringComparison.OrdinalIgnoreCase) = 0 Then
'return typeof()
End If
'this can be customized to search specific paths for the file,
'or to search the GAC
'if the directive processor can not be found, throw an error
Throw New Exception("Directive Processor not found")
End Function
Seguridad de .NET Framework
- Plena confianza para el llamador inmediato. Un código de confianza parcial no puede utilizar este miembro. Para obtener más información, vea Utilizar bibliotecas de código que no es de plena confianza.
Vea también
Referencia
ITextTemplatingEngineHost Interfaz
Microsoft.VisualStudio.TextTemplating (Espacio de nombres)
ResolveFileName
Otros recursos
Tutorial: Crear un host de plantillas de texto personalizadas