NFine框架的T4模板

2019-04-23 18:57

NFine框架的T4模板

阅读目录 1.前言

2.NFine.Domain.Entity

3.NFine.Domain.IRepository 4.NFine.Repository 5.NFine.Mapping 6.NFine.Application 7.DbHelper.ttinclude 8.ModelAuto.ttinclude 模板在此下载。 回到顶部 1.前言

前段时间在网上看到一个开源框架很好的。开源:ASP.NET MVC+EF6+Bootstrap开发框架,写代码就是比较比较麻烦,分层比较多,对于我这种偷懒的人就想到了写一个T4模板。不了解框架的可以先去看一下这个开源的框架。

一起有5个层,也就是意味着每次数据库添加一张表,就需要写这5个类。 回到顶部

2.NFine.Domain.Entity 复制代码

<#@ template debug=\<#@ output extension=\

<#@ assembly name=\<#@ assembly name=\

<#@ assembly name=\<#@ assembly name=\<#@ import namespace=\<#@ import namespace=\<#@ import namespace=\<#@ import namespace=\

<#@ import namespace=\

<#@ import namespace=\<#@ import namespace=\

<#@ include file=\ #>

//------------------------------------------------------------------------------ // <博客园-枫伶忆 http://www.cnblogs.com/fenglingyi/> // 此代码由T4模板自动生成

// 生成时间 <#=DateTime.Now.ToString(\枫伶忆

// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。

// QQ:549387177

// <博客园-枫伶忆 http://www.cnblogs.com/fenglingyi/> //------------------------------------------------------------------------------ <#

var tableName=config.TableName.Replace(\ #>

using System;

namespace NFine.Domain.Entity.SystemManage {

///

/// <#=tableName#> ///

public class <#=tableName#>:IEntity<<#=tableName#>>, ICreationAudited, IDeleteAudited, IModificationAudited {

<# foreach(DbColumn column in DbHelper.GetDbColumns(config.ConnectionString, config.DbDatabase, config.TableName)){#>

public <#= column.CSharpType#><# if(column.CommonType.IsValueType && column.IsNullable){#>?<#}#> <#=column.ColumnName#> { get; set; } <#}#> } }

复制代码 回到顶部

3.NFine.Domain.IRepository 复制代码

<#@ template debug=\<#@ output extension=\

<#@ assembly name=\<#@ assembly name=\

<#@ assembly name=\<#@ assembly name=\<#@ import namespace=\<#@ import namespace=\<#@ import namespace=\<#@ import namespace=\

<#@ import namespace=\

<#@ import namespace=\<#@ import namespace=\

<#@ include file=\ #> //------------------------------------------------------------------------------ // <博客园-枫伶忆 http://www.cnblogs.com/fenglingyi/> // 此代码由T4模板自动生成

// 生成时间 <#=DateTime.Now.ToString(\枫伶忆

// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。

// QQ:549387177

// <博客园-枫伶忆 http://www.cnblogs.com/fenglingyi/> //------------------------------------------------------------------------------ <#

var tableName=config.TableName.Replace(\ var entity=config.TableName.Replace(\ #>

using NFine.Data;

using NFine.Domain.Entity.SystemManage; using System;

using System.Collections.Generic; using System.Linq; using System.Text;

using System.Threading.Tasks;

namespace NFine.Domain.IRepository.SystemManage {

///

/// <#=tableName#> ///

public interface I<#=tableName#>:IRepositoryBase<<#=entity#>> {

} }

复制代码

回到顶部

4.NFine.Repository

复制代码

<#@ template debug=\<#@ output extension=\

<#@ assembly name=\<#@ assembly name=\

<#@ assembly name=\<#@ assembly name=\<#@ import namespace=\<#@ import namespace=\<#@ import namespace=\<#@ import namespace=\

<#@ import namespace=\

<#@ import namespace=\<#@ import namespace=\

<#@ include file=\ #> //------------------------------------------------------------------------------

// <博客园-枫伶忆 http://www.cnblogs.com/fenglingyi/> // 此代码由T4模板自动生成

// 生成时间 <#=DateTime.Now.ToString(\枫伶忆

// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。

// QQ:549387177

// <博客园-枫伶忆 http://www.cnblogs.com/fenglingyi/> //------------------------------------------------------------------------------ <#

var tableName=config.TableName.Replace(\ var entity=config.TableName.Replace(\ #>

using NFine.Data;

using NFine.Domain.Entity.SystemManage;

using NFine.Domain.IRepository.SystemManage; using System;

using System.Collections.Generic; using System.Linq; using System.Text;

using System.Threading.Tasks;

namespace NFine.Repository.SystemManage {

///

/// <#=tableName#> ///

public class <#=tableName#>:RepositoryBase<<#=entity#>>,I<#=tableName#> {

} }

复制代码

回到顶部

5.NFine.Mapping 复制代码

<#@ template debug=\<#@ output extension=\

<#@ assembly name=\<#@ assembly name=\

<#@ assembly name=\<#@ assembly name=\<#@ import namespace=\<#@ import namespace=\<#@ import namespace=\<#@ import namespace=\

<#@ import namespace=\

<#@ import namespace=\<#@ import namespace=\

<#@ include file=\ #> //------------------------------------------------------------------------------ // <博客园-枫伶忆 http://www.cnblogs.com/fenglingyi/> // 此代码由T4模板自动生成

// 生成时间 <#=DateTime.Now.ToString(\枫伶忆

// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。

// QQ:549387177

// <博客园-枫伶忆 http://www.cnblogs.com/fenglingyi/> //------------------------------------------------------------------------------ <#

var dbTableName=config.TableName;

var tableName=config.TableName.Replace(\ var entity=config.TableName.Replace(\

var list= DbHelper.GetDbColumns(config.ConnectionString, config.TableName);

var pk = DbHelper.GetPrimaryKey(list); #>

using NFine.Domain.Entity.SystemManage; using System.Data.Entity.ModelConfiguration; namespace NFine.Mapping.SystemManage {

///

/// <#=tableName#> ///

public class <#=tableName#>:EntityTypeConfiguration<<#=entity#>> {

public <#=tableName#>() {

this.ToTable(\ this.HasKey(t=>t.<#=pk#>); } } }

复制代码

config.DbDatabase,


NFine框架的T4模板.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:沪科版压强第一章节压力压强练习题及答案 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: