1. 程式人生 > >t4 根據表名數組生成實體

t4 根據表名數組生成實體

pre generic sts data sha val 重新 multi port

<#@ template debug="false" hostspecific="true" language="C#" #>
<#@ 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" #> <[email protected]
/* */ file="$(ProjectDir)\T4\include\DbHelper.ttinclude"#> <[email protected] file="$(ProjectDir)\T4\include\MultipleOutputHelper.ttinclude"#> <#@ output extension=".cs" #> <# var manager = Manager.Create(Host, GenerationEnvironment); string projectPath = Host.ResolveAssemblyReference("
$(ProjectDir)"); foreach(string item in config.TableName ) { manager.StartNewFile(projectPath+"Models\\Entity\\"+item+".cs"); #> //------------------------------------------------------------------------------ // <auto-generated> // 此代碼由T4模板自動生成 // 生成時間 <#= DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")#> by 大聰哥 // 對此文件的更改可能會導致不正確的行為,並且如果 // 重新生成代碼,這些更改將會丟失。 // </auto-generated> //------------------------------------------------------------------------------ using System; namespace T4.Entities { public class <#= item#> { <# foreach(DbColumn column in DbHelper.GetDbColumns(config.ConnectionString, config.DbDatabase, item)){#> /// <summary> /// <#= column.Remark#> /// </summary> public <#= column.CSharpType#><# if(column.CommonType.IsValueType && column.IsNullable){#>?<# }#> <#= column.ColumnName#> { get; set; } <# }#> } } <# }#> <# manager.EndBlock(); #> <# manager.Process(true); #> <#+ public class config { public static readonly string ConnectionString="server=192.168.0.101,1433\\sql2008R2;database=xx;uid=sa;pwd=xx"; public static readonly string DbDatabase="xx"; public static readonly List<string> TableName=new List<string>(){ "a", "b" }; } #>

t4 根據表名數組生成實體