有啥方法可以在基本 T4 模板中具有功能吗?

Posted

技术标签:

【中文标题】有啥方法可以在基本 T4 模板中具有功能吗?【英文标题】:Is there any way to have functions in basic T4 templates?有什么方法可以在基本 T4 模板中具有功能吗? 【发布时间】:2011-01-13 03:34:41 【问题描述】:

basic T4 模板,我的意思是不使用 T4 Toolkit 或任何插件。

我的 T4 有点复杂,但我想暂时保持独立。有没有办法在你的 T4 模板中有函数,而不引用外部程序集?

【问题讨论】:

【参考方案1】:

你的意思是这样的:

<#+
    public List<string> Dostuff()
    
        List<string> result = new List<string>(); 

        // ...

        return result;
    
#>

这是一个完整的例子:Reading a Xml File in T4 Templates

Oleg Sych's T4Toolbox 是一个很好的资源。

【讨论】:

"",太好了,这就是我所追求的。你知道吗,你能在那个 代码块中定义类型吗? 请注意,这些类功能控制块必须放在 t4 文件的末尾,否则会出现语法错误。 但这不允许您从该函数内部渲染内容,就像在 php 函数中那样,对吧?这种类似 PHP 的行为是否可能(例如,在函数定义中在呈现模式和代码模式之间切换)?我认为以某种方式允许重复渲染任务会很方便...... 微软链接已损坏。

以上是关于有啥方法可以在基本 T4 模板中具有功能吗?的主要内容,如果未能解决你的问题,请参考以下文章

在运行时(构建时)创建 T4 模板?

在 T4 文本模板中调用异步方法?

使用 t4 模板生成动态代码

PetaPoco的T4模板报错的问题

如何从 PowerShell 脚本触发 T4 模板

有人知道任何用于从 xsd 生成类的 T4 模板吗?