首页 > 解决方案 > 文本模板(.tt 文件),定义数组并迭代多种类型的生成方法

问题描述

我正在创建数字扩展方法,而不是多次编写相同的方法,我想使用文本模板文件。但是,我找不到有关创建要迭代的数组以放置输入所需的类型以及各种方法的输出的信息。我以前这样做过一次,但似乎我再也找不到上次有帮助的信息了,如果有人能指出我正确的地方或只是提供帮助,将不胜感激。

标签: c#

解决方案


像这样的东西:

<#@ template debug="false" hostspecific="false" language="C#" #>
<#@ output extension=".cs" #>

namespace MyApp
{
    public class Calculator
    {
    <# 
        var types = new string[] { "int", "long", "float", "double" };

        foreach(var T in types)
        {
    #>
        public <#=T#> Add(<#=T#> a, <#=T#> b)
        {
            return a + b;
        }

        public <#=T#> Subtract(<#=T#> a, <#=T#> b)
        {
            return a - b;
        }
    <#
        }
    #>
    }
}

推荐阅读