T4模板使用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了T4模板使用相关的知识,希望对你有一定的参考价值。
本例使用的数据库是Northwind
1.新建tt文本模板customer.tt
2. 修改customer.tt内容为
<#@ template debug="false" hostspecific="false" language="C#" #> <#@ output extension=".cs" #> <#@ assembly name="System.Core.dll" #> <#@ assembly name="System.Data.dll" #> <#@ assembly name="System.Data.DataSetExtensions.dll" #> <#@ assembly name="System.Xml.dll" #> <#@ import namespace="System" #> <#@ import namespace="System.Xml" #> <#@ import namespace="System.Linq" #> <#@ import namespace="System.Data" #> <#@ import namespace="System.Data.SqlClient" #> <#@ import namespace="System.Collections.Generic" #> <#@ import namespace="System.IO" #> <#@ include file="$(ProjectDir)DbHelper.ttinclude" #> //------------------------------------------------------------------------------ // <auto-generated> // 此代码由T4模板自动生成 // 生成时间 <#=DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")#> by 懒惰的肥兔 // 对此文件的更改可能会导致不正确的行为,并且如果 // 重新生成代码,这些更改将会丢失。 // </auto-generated> //------------------------------------------------------------------------------ using System; namespace T4ConsoleApplication.Entities { public class <#=config.TableName#> { <# foreach(DbColumn column in DbHelper.GetDbColumns(config.ConnectionString, config.DbDatabase, config.TableName)){#> /// <summary> /// <#=column.Remark#> /// </summary> public <#= column.CSharpType#><# if(column.CommonType.IsValueType && column.IsNullable){#>?<#}#> <#=column.ColumnName#> { get; set; } <#}#> } } <#+ public class config { //public static readonly string ConnectionString="Data Source=(local);Integrated Security=true;Initial Catalog=Northwind;"; public static readonly string ConnectionString="Data Source=(local);Initial Catalog=Northwind;User ID=sa;[email protected];"; //要连接的数据库 public static readonly string DbDatabase="Northwind"; //数据库名称 public static readonly string TableName="Customers";//表名 } #>
3.CTRL+S 则会生成customer.cs 实体文件
以上是关于T4模板使用的主要内容,如果未能解决你的问题,请参考以下文章