Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Get Project or Relative Directory with T4

How can I get a reference to the directory of the visual studio project or solution or the directory of the t4 template from within a t4 template?

I have a template that concatenates a number of files together which are located relative to the template. I need to get a reference to there absolute location through a relative means. Hard coding an absolute path is not acceptable because the visual studio project will not always be in the same location and this would break the code generation. Reading the current working directory from the environment doesn't work either because that returns the location of where the T4 engine lives not the template. I'm just getting in to t4 so any help would be appreciated.

like image 628
Blake Taylor Avatar asked Aug 29 '09 22:08

Blake Taylor


1 Answers

See The Host Specific Parameter section HERE.

This snippet shows how to get the full path of src relative to the template.

<#@ template hostspecific="true" #> // The location of the src folder relative to the t4 template: // <#= Host.ResolvePath("src") #> 
like image 178
Blake Taylor Avatar answered Sep 24 '22 15:09

Blake Taylor