遍历数据库中表的T4模板
电脑版发表于:2019/6/1 18:58
简单的案例
创建文本模板

ctrl+s出奇迹
<#@ template debug="false" hostspecific="false" language="C#" #>
<#@ assembly name="System.Core" #>
<#@ import namespace="System.Linq" #>
<#@ import namespace="System.Text" #>
<#@ import namespace="System.Collections.Generic" #>
<#@ output extension=".cs" #>
public class T4Demo
{
<#for(var i=0;i<10;i++){#>
public int Demo<#=i#>{get;set;}
<#}#>
}遍历数据库照EF抄的一些
<#@ template debug="false" hostspecific="true" language="C#" #>
<#@ include file="EF.Utility.CS.ttinclude" #>
<#@ output extension=".cs" #>
<#
CodeGenerationTools code = new CodeGenerationTools(this);
MetadataLoader loader = new MetadataLoader(this);
CodeRegion region = new CodeRegion(this,1);
MetadataTools ef = new MetadataTools(this);
string inputFile = @"demu模型地址";
EdmItemCollection ItemCollection = loader.CreateEdmItemCollection(inputFile);
string namespaceName = code.VsNamespaceSuggestion();
EntityFrameworkTemplateFileManager fileManager = EntityFrameworkTemplateFileManager.Create(this);
#>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using 需要引用的命名空间;
namespace 命名空间
{
<#
foreach (EntityType entity in ItemCollection.GetItems<EntityType>().OrderBy( e => e.Name ))
{
#>
public partial interface I<#=entity.Name#>Dal : IBaseDal<<#=entity.Name#>>
{
}
<#}#>
}