Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El proceso de transformación de plantilla de texto toma un archivo de plantilla de texto como entrada y genera un archivo de texto como salida. Puede llamar al motor de transformación de texto desde una extensión de Visual Studio o desde una aplicación independiente que se ejecuta en un equipo en el que está instalado Visual Studio. Sin embargo, debe proporcionar un anfitrión de plantillas de texto. Esta clase conecta la plantilla al entorno, encontrando recursos como ensamblados y archivos de inclusión, y gestionando los mensajes de salida y error.
Sugerencia
Si va a escribir un paquete o una extensión que se ejecutarán en Visual Studio, considere la posibilidad de usar el servicio de plantillas de texto, en lugar de escribir su propio host. Para obtener más información, consulte Invocación de transformación de texto en una extensión de VS.
Nota:
No se recomienda usar transformaciones de plantilla de texto en aplicaciones de servidor. No se recomienda usar transformaciones de plantilla de texto excepto en un único subproceso. Esto se debe a que el motor de plantillas de texto vuelve a usar un único appDomain para traducir, compilar y ejecutar plantillas. El código traducido no está diseñado para ser seguro para subprocesos. El motor está diseñado para procesar archivos en serie, tal como existen en un proyecto de Visual Studio en el momento de diseño.
Para las aplicaciones en tiempo de ejecución, considere usar plantillas de texto previamente procesadas: consulte Generación de texto en tiempo de ejecución con plantillas de texto T4.
Si la aplicación usa un conjunto de plantillas que se fijan en tiempo de compilación, es más fácil usar plantillas de texto preprocesadas. También puede usar ese enfoque si la aplicación se ejecutará en un equipo en el que Visual Studio no está instalado. Para obtener más información, consulte Generación de texto en tiempo de ejecución con plantillas de texto T4.
Ejecutar una plantilla de texto en la aplicación
Para ejecutar una plantilla de texto, llame al método ProcessTemplate de Microsoft.VisualStudio.TextTemplating.Engine:
using Microsoft.VisualStudio.TextTemplating;
...
Engine engine = new Engine();
string output = engine.ProcessTemplate(templateString, host);
La aplicación debe buscar y proporcionar la plantilla y debe gestionar la salida.
En el host parámetro , debe proporcionar una clase que implemente ITextTemplatingEngineHost. Esto es llamado de vuelta por el motor.
El host debe poder registrar errores, resolver referencias a archivos de ensamblado e inclusión, proporcionar un dominio de aplicación en el que se pueda ejecutar la plantilla y llamar al procesador adecuado para cada directiva.
Microsoft.VisualStudio.TextTemplating.Engine se define en Microsoft.VisualStudio.TextTemplating.*.0.dlly ITextTemplatingEngineHost se define en Microsoft.VisualStudio.TextTemplating.Interfaces.*.0.dll.
En esta sección
Tutorial: Crear un host de plantilla de texto personalizado muestra cómo crear un host de plantilla de texto personalizado que hace que la funcionalidad de la plantilla de texto esté disponible fuera de Visual Studio.
Referencia
Contenido relacionado
- El proceso de transformación de la plantilla de texto describe cómo funciona la transformación de texto y qué partes se pueden personalizar.
- Crear procesadores de directivas de plantillas de texto T4 personalizadas da una visión general sobre los procesadores de directivas de plantilla de texto.