visual-studio-2010powershellcode-generationt4

How to trigger T4 template from PowerShell script


In my VS2010 solution I have set of Powershell scripts and T4 templates based on T4Scaffolding NuGet, everything is working fine with scaffolding and related T4's, but in one of my scripts I need to trigger a T4 template located in another project.

Any simple Powershel cmdlet for this? to just run the template with out passing any parameters or values.

Thanks.


Solution

  • It looks like you can just invoke their command line utility, so you could create a script that just takes the location of your .tt file.

    param([string] $T4Template)
    
    & "C:\Program Files (x86)\Common Files\microsoft shared\TextTemplating\10.0\TextTransform.exe" $T4Template
    

    Save above as ExecTextTransform.ps1 and then call with your paths. Example:

    .\ExecTextTransform.ps1 c:\temp\example.tt
    

    See here for an example of calling their command line utility.