Miro y no veo.¿Cómo uso biblioteca/proyecto personalizado en la plantilla de texto T4?
Tengo una solución con dos proyectos: el proyecto A (una biblioteca) y el proyecto B, que es el proyecto principal y contiene la plantilla de texto T4.
Lo que hice hasta ahora - he añadido una referencia en el proyecto principal de A. He incluido como línea en plantilla de proyecto:
<#@ import namespace="MyProjectA" #>
Sin embargo, todavía hay un error "transformación Compilación: El tipo o namespace name 'MyProjectA' no se pudo encontrar (¿falta una directiva using o una referencia de ensamblado?) "
Pregunta: ¿cómo puedo hacer referencia al proyecto A desde la plantilla de texto?
Tenga en cuenta: me gustaría hacer referencia a un proyecto dentro de la solución, no al archivo dll en el disco.
Gracias, a partir de la explicación en el blog llegué a la conclusión la directiva de ensamblaje es simplemente alternativa a la referencia (por ejemplo, podría incluir el ensamblaje solo para una plantilla), y pensé que las referencias son vistas por T4. – greenoldman
'hostspecific' y'Path.GetDirectoryName' se pueden evitar con '$ (SolutionDir)', ver [link] (http://msdn.microsoft.com/en-us/library/gg586946.aspx). Es una pena que no haya una solución más limpia que pueda autoconstruir el proyecto referenciado en la generación de texto si ha cambiado. –