2010-01-18 7 views
15

Estoy usando plantillas T4 en Visual Studio para la generación de código, y estoy tratando de hacer referencia a un archivo local .xml desde el código de plantilla para poder analizar metadatos sobre el modelo de datos de la aplicación.Ascendiendo el Directorio de Proyectos desde Plantillas T4

Cuando el código de la plantilla (que se ejecuta en tiempo de compilación o cuando se ejecuta "Ejecutar herramienta personalizada" en la plantilla) intenta obtener la trayectoria de la corriente a través Environment.CurrentDirectory, me sale esto:

c

: \ Program Archivos (x86) \ Microsoft Visual Studio 9.0 \ Common7 \ IDE

Estoy tratando de encontrar la ruta de la plantilla en sí, dentro del proyecto, de modo que pueda usar una ruta relativa para encontrar el archivo .xml que está conduciendo eso. ¿Algunas ideas?

+2

http://stackoverflow.com/questions/1352570/get-project-or-relative-directory-with-t4 –

Respuesta

4

Otro (tal vez un poco más rápido) manera de hacerlo es Host.ResolvePath (localFilePath).

15

he encontrado la respuesta:

Path.GetDirectoryName (Host.TemplateFile)

Cuestiones relacionadas