c# - 如何在T4模板中输出<Type>

标签 c# code-generation t4

我正在尝试实现 T4 template生成一些冗余的csharp代码。我的模板获取传入的对象类型,如下 GenericTextFormatter<<#=type>>其中类型为 typeof(objectA)所以我期望生成 GenericTextFormatter<ObjectA> 的输出但是,模板在显示外部尖括号时遇到问题,相反,我没有看到这部分的输出。

最佳答案

您忘记了结束#。试试GenericTextFormatter<<#=type #>> .

作为引用,以下 t4 代码输出 List<System.String> :

<#@ template debug="false" hostspecific="false" language="C#" #>
<#@ assembly name="System.Core" #>
<#@ import namespace="System.Linq" #>
<#@ import namespace="System.Text" #>
<#@ import namespace="System.Collections.Generic" #>
<#@ output extension=".txt" #>

<#
    var type = typeof(string);
#>

List<<#= type #>>

关于c# - 如何在T4模板中输出<Type>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33484011/

相关文章:

visual-studio - 您使用 T4 的目的是什么?

c# - 有没有办法修改 IQueryable 中为 OData 请求返回的数据?

c++ - 如何在 waf 构建系统中使用自定义代码生成器?

algorithm - 作为有限状态机的通用语言解析器

scala - 如何从 AutoPlugin 修改 Compile 中的 sourceGenerators?

c# - 如何在将加载到 Redis 的 LUA 脚本上重用代码?

javascript - 为什么 C# 解析的 DateTime 提前 7 小时?

c# - 如何使用 Google API 版本 2 将 chuck 中的 EML 数据迁移到 Google Apps Mail?

C# 如果项目已存在则更新多元素列表项目,否则将其添加为新项目

c# - T4 文本生成部分类