利用T4模版生成EF实体

Posted 大壮他哥-专注于营销软件开发

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用T4模版生成EF实体相关的知识,希望对你有一定的参考价值。

直接上代码,只需要修改EF实体的地址就可以了。

 

<#@ template language="C#" debug="false" hostspecific="true"#>
<#@ 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 = @"..\\Search.Model\\SearchEngines.edmx";  //修改此处

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 Search.Model;
using Search.IDal;
namespace Search.Dal
{
<#
// Emit Entity Types

foreach (EntityType entity in ItemCollection.GetItems<EntityType>().OrderBy(e => e.Name))
{
    //fileManager.StartNewFile(entity.Name + "RepositoryExt.cs");
    //BeginNamespace(namespaceName, code);    
#>		
	public partial class <#=entity.Name#>Dal :BaseDal<<#=entity.Name#>>,I<#=entity.Name#>Dal
    {

    }
<#}#>
	
}

  

以上是关于利用T4模版生成EF实体的主要内容,如果未能解决你的问题,请参考以下文章

无需任何配置即可生成实体代码的 T4 模板

使用T4模板为EF框架添加实体根据数据库自动生成字段注释的功能

T4 模板自动生成带注释的实体类文件 - 只需要一个 SqlSugar.dll

初用T4

使用T4模板为EF框架添加数据库实体注释

基于数据库的vs2019的T4模版代码生成器基于mysql数据库