尘叶心繁

遍历数据库中表的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#>>
	{
	
	}

<#}#>

}


关于TNBLOG
TNBLOG,技术分享。技术交流:群号677373950
ICP备案 :渝ICP备18016597号-1
App store Android
精彩评论
{{item.replyName}}
{{item.content}}
{{item.time}}
{{subpj.replyName}}
@{{subpj.beReplyName}}{{subpj.content}}
{{subpj.time}}
猜你喜欢