У меня есть проект, содержащий несколько интерфейсов, и я хочу написать один шаблон для генерации классов, которые реализуют эти интерфейсы (например, если у меня 2 интерфейса, шаблон будет генерировать 2 класса). Созданный класс помещается в определенную папку.
В настоящее время у меня есть два вопроса:
1. Мой шаблон генерирует только один файл, который содержит много классов.
2. Класс создается под текстовым шаблоном.
Ниже мой код:
<#@ template language="C#" #>
<#@ include file="EF.Utility.CS.ttinclude"#>
<#@ output extension=".cs"#>
<#
Assembly assembly = Assembly.LoadFrom(@"Example.dll");
Type[] types = assembly.GetTypes();
foreach (Type type in types)
{
if (type.IsInterface)
{
string nameSpace = "Example.Client";
string className = type.Name.TrimStart('I')";
string interfaceName = type.Name;
#>
namespace <#= nameSpace #>
{
public class <#= className #> : <#= interfaceName #>
{
}
}
<#
}
}
#>
Как я могу сгенерировать много классов для определенной папки? Можете ли вы помочь мне, пожалуйста?
Спасибо