【问题标题】:Is is possible to call the T4 custom tool TextTemplatingFileGenerator directly in VS2008, for e.g. using an addin是否可以在 VS2008 中直接调用 T4 自定义工具 TextTemplatingFileGenerator,例如使用插件
【发布时间】:2011-12-07 15:05:04
【问题描述】:

我想知道是否可以直接在VS2008中调用T4自定义工具TextTemplatingFileGenerator,例如使用插件。

我的情况是解决方案中有元数据 (xml) 文件。 T4 模板读取这些文件以在与元数据文件相同的文件夹中生成 C# 类文件。

目前我有 T4 模板扫描解决方案以搜索特定扩展名并创建文件。如果能够运行使用元数据文件路径调用模板的加载项,那就太好了。请注意,我非常广泛地使用 VS 主机将生成的文件添加到项目中。

我想知道是否可以直接从外接程序中调用 TextTemplatingFileGenerator,是否可以实现我想要的。

另外要考虑的是我使用的是T4toolbox。

问候, 伊利亚斯

【问题讨论】:

    标签: t4 visual-studio-addins t4-toolbox


    【解决方案1】:

    是的,您当然可以调用 T4 服务来获取插件。您不需要使用 TextTemplatingFileGenerator,它主要是服务的一个瘦包装器。

    在加载项中,将您的 DTE 对象强制转换为 IServiceProvider,然后向其请求 STextTemplating

    将结果转换为ITextTemplating,然后为要转换的每个模板调用 ProcessTemplate 方法。如果您进行多次调用,则将它们括在对 Begin/EndErrorSession 的调用中以对输出进行重复数据删除。

    回调和层次参数是可选的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-08-27
      • 1970-01-01
      • 1970-01-01
      • 2011-09-03
      • 1970-01-01
      • 2011-07-10
      • 2014-12-26
      相关资源
      最近更新 更多