将对象传递给T4模板

bra*_*ter 5 .net c# t4 templates

我有一个u1类型的对象User.用户有一个属性name.如何传入u1T4模板?我想做一些非常简单的事情:

User u1 = new User("John"); 
Run Code Online (Sandbox Code Playgroud)


模板脚本:

Hello <# u1.Name #>
Run Code Online (Sandbox Code Playgroud)

Joh*_*ren 2

你想在你的模板中使用它吗?然后,您需要添加对包含该类型的程序集的引用。您不能简单地传递对 T4 引擎的现有引用,除非您自己以某种非常非正统的方式托管它(我从未见过有人尝试这样做)。即使您做到了这一点,您将如何运行它?这个引用应该来自哪里?

使用 T4 模板中的类型就像添加引用或将其复制/粘贴到类存根中一样简单<#+ /*stuff goes here*/ #>