Coloque todos os métodos em um arquivo .tt e use-o em outros arquivos t4 em CodeTemplates do MVC
Eu uso o ASP.NET MVC 3CodeTemplates personalizados Eu preciso colocar alguns métodos em um arquivo t4 e, em seguida, usá-lo em todos os meus modelos t4.
Então este é meu arquivo general.tt:
<#@ template language="C#" #>
<#@ assembly name="System" #>
<#@ assembly name="System.Core" #>
<#@ assembly name="System.ComponentModel.DataAnnotations" #>
<#@ assembly name="System.Data" #>
<#@ assembly name="System.Data.Entity" #>
<#@ assembly name="System.Data.Linq" #>
<#@ assembly name="System.Xml.Linq" #>
<#@ import namespace="System" #>
<#@ import namespace="System.Linq" #>
<#@ import namespace="System.Text" #>
<#@ import namespace="System.Collections.Generic" #>
<#@ import namespace="System.ComponentModel.DataAnnotations" #>
<#@ import namespace="System.ComponentModel" #>
<#@ import namespace="System.Data.Linq.Mapping" #>
<#@ import namespace="System.Data.Objects.DataClasses" #>
<#@ import namespace="System.Reflection" #>
<#@ import namespace="Microsoft.VisualStudio.Web.Mvc.Scaffolding.BuiltIn" #>
<#+
public class XXD {
public string getitNow(){
return "Yup thats it!";
}
}
#>
Então eu uso no arquivo create.tt como este:
<#@ include file="general.tt" #>
...
<#+
private string GetitNow(){
XXD xx = new XXD();
return xx.getitNow();
}
mas há um erro quando quero adicionar a vista Use create template:
erro: Carregando o arquivo incluído 'general.tt' retornou uma string nula ou vazia. A transformação não será executada.
Então onde está o problema? qual a sua sugestão para fazer isso?