繁体   English   中英

IEnumerable T4模板

[英]IEnumerable T4 Templates

我正在研究一些代码生成的东西-使用T4 RuntimTemplates。 我确实有多个模板,并且将它们“存储”在IEnumberable列表中。

我的问题是我想使用.WriteAllText()这是一个虚拟方法来遍历模板。

我认为,这可能是创建带有.WriteAllText()定义并在局部类中声明它的接口的最简单方法。

    public partial class SolutionTemplateRunTime :     SolutionTemplateRunTimeBase, ICodegenerationTemplate
{

在我存储或更新模板之前,这一直有效;-)。 模板的部分类(cs后面的代码)将更新,并且接口声明不见了。

    public partial class SolutionTemplateRunTime :     SolutionTemplateRunTimeBase
{

有解决方案吗? 每当我更新模板时都会重新声明接口,这很烦人。希望您能提供帮助。

格雷茨·伊基(Greetz Iki)

我认为您缺少partial -这个想法是,您要进行的更改的确切类型是在单独的文件中完成的-不会生成该文件。

只需创建一个新的cs文件,并带有如下声明:

public partial class SolutionTemplateRunTime : ICodegenerationTemplate
{
  ...
}

编译代码时,编译器将合并同一类的所有部分声明-这包括该类实现的接口等。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM