DAL模版
<#@ template language="c#" HostSpecific="True" #> <#@ output extension= ".cs" #> <# TableHost host = (TableHost)(Host); string DbParaHead=host.DbParaHead; string DbParaDbType=host.DbParaDbType; string preParameter=host.preParameter; string ModelSpace = host.NameSpace+".Model."+ host.GetModelClass(host.TableName); ColumnInfo identityKey=host.IdentityKey; string returnValue = "void"; if (identityKey!=null) { returnValue = CodeCommon.DbTypeToCS(identityKey.TypeName); } #> using System; using System.Text; using System.Data.SqlClient; using System.Collections.Generic; using System.Data; using DBUtility; using Model; namespace DAL <# if( host.Folder.Length > 0){ #> .<#= host.Folder #> <# } #> { <# if( host.TableDescription.Length > 0) {#> //<#= host.TableDescription #> <# } #> public partial class DAL<#= host.GetDALClass(host.TableName) #> { public bool Exists(<#= CodeCommon.GetInParameter(host.Keys, false) #>) { StringBuilder strSql=new StringBuilder(); strSql.Append("select count(1) from <#= host.TableName #>"); strSql.Append(" where "); <# for(int i=0;i< host.Keys.Count;i++) { ColumnInfo key = host.Keys[i]; #> <# if (key.IsPrimaryKey || !key.IsIdentity) {#> strSql.Append(" <#= key.ColumnName#> = <#=preParameter#><#=key.ColumnName#> <# if (i< host.Keys.Count-1 ) {#>and <#}#> "); <#}#> <# }#> <#= CodeCommon.GetPreParameter(host.Keys, false, host.DbType) #> return DBExecuteUtil.Exists(strSql.ToString(),parameters); } /// <summary> /// 增加一条数据 /// </summary> public <#= returnValue #> Add(<#= host.TableName #>Entity model) { StringBuilder strSql=new StringBuilder(); strSql.Append("insert into <#= host.TableName #>("); strSql.Append("<# for(int i=0;i< host.Fieldlist.Count;i++) { ColumnInfo c = host.Fieldlist[i]; if (!c.IsIdentity) {#><#= c.ColumnName#><# if (i< host.Fieldlist.Count-1 ) {#>,<#}#><#}}#>"); strSql.Append(") values ("); strSql.Append("<# for(int i=0;i< host.Fieldlist.Count;i++) { ColumnInfo c = host.Fieldlist[i]; if (!c.IsIdentity) {#><#=preParameter#><#= c.ColumnName#><# if (i< host.Fieldlist.Count-1 ) {#>,<#}#><#}}#>"); strSql.Append(") "); <#if (identityKey!=null) {#>strSql.Append(";select @@IDENTITY");<#}#> SqlParameter[] parameters = { <# for(int i=0;i< host.Fieldlist.Count;i++) { ColumnInfo c = host.Fieldlist[i]; if(c.IsIdentity) continue; #> new SqlParameter("<#=preParameter#><#=c.ColumnName#>", SqlDbType.<#=CodeCommon.DbTypeLength(host.DbType, c.TypeName, c.Length)#>) <# if (i< host.Fieldlist.Count-1 ) {#>,<#}#> <# }#> }; <# foreach (ColumnInfo c in host.Fieldlist) { if(c.IsIdentity) continue;#> parameters[<#= n #>].Value = <# if ("uniqueidentifier" == c.TypeName.ToLower()){#>Guid.NewGuid();<#} else {#>model.<#=c.ColumnName#>;<#} n=n+1; #> <# }#> <#if (identityKey!=null) {#> object obj = <#= host.DbHelperName#>.GetSingle(strSql.ToString(),parameters); if (obj == null) { return 0; } else { <# if ( returnValue=="int" ) {#> return Convert.ToInt32(obj); <#}#> <# if ( returnValue=="long" ) {#> return Convert.ToInt64(obj); <#}#> <# if ( returnValue=="decimal" ) {#> return Convert.ToDecimal(obj); <#}#> } <#} else {#> DBExecuteUtil.ExecuteSqlWithParams(strSql.ToString(),parameters); <#}#> } /// <summary> /// 更新一条数据 /// </summary> public bool Update(<#= host.TableName #>Entity model) { StringBuilder strSql=new StringBuilder(); List<SqlParameter> parameters = new List<SqlParameter>(); strSql.Append("update <#= host.TableName #> set "); <# for(int i=0;i< host.Fieldlist.Count;i++) { ColumnInfo c = host.Fieldlist[i]; #> <# if (!c.IsIdentity) {#> <# if(CodeCommon.DbTypeToCS(c.TypeName)=="string") {#> if(!string.IsNullOrEmpty(model.<#=c.ColumnName#>)){ strSql.Append(" <#= c.ColumnName #> = <#=preParameter#><#=c.ColumnName#> , "); parameters.Add(new SqlParameter("<#=preParameter#><#=c.ColumnName#>",model.<#=c.ColumnName#>)); }<# }#> <# if(CodeCommon.DbTypeToCS(c.TypeName)=="bool") {#> strSql.Append(" <#= c.ColumnName #> = <#=preParameter#><#=c.ColumnName#> , "); parameters.Add(new SqlParameter("<#=preParameter#><#=c.ColumnName#>",model.<#=c.ColumnName#>)); <# }#> <# if(CodeCommon.DbTypeToCS(c.TypeName)=="DateTime") {#> if(model.<#=c.ColumnName#>!=null){ strSql.Append(" <#= c.ColumnName #> = <#=preParameter#><#=c.ColumnName#> , "); parameters.Add(new SqlParameter("<#=preParameter#><#=c.ColumnName#>",model.<#=c.ColumnName#>)); } <# }#> <# if(CodeCommon.DbTypeToCS(c.TypeName)=="int"|| CodeCommon.DbTypeToCS(c.TypeName)=="long"|| CodeCommon.DbTypeToCS(c.TypeName)=="float"|| CodeCommon.DbTypeToCS(c.TypeName)=="decimal") {#> if(model.<#=c.ColumnName#>!=0){ strSql.Append(" <#= c.ColumnName #> = <#=preParameter#><#=c.ColumnName#> , "); parameters.Add(new SqlParameter("<#=preParameter#><#=c.ColumnName#>",model.<#=c.ColumnName#>)); } <#}#> <#}#> <# }#> strSql = strSql.Remove(strSql.Length - 2,2); strSql.Append(" where <#= CodeCommon.GetWhereParameterExpression(host.Keys, true ,host.DbType) #> "); <# for(int i=0;i< host.Keys.Count;i++) { ColumnInfo key = host.Keys[i]; #> <# if (key.IsPrimaryKey || !key.IsIdentity) {#> parameters.Add(new SqlParameter("<#=preParameter#><#=key.ColumnName#>",model.<#=key.ColumnName#>)); <#}#> <# }#> int rows=DBExecuteUtil.ExecuteSqlWithParams(strSql.ToString(),parameters.ToArray()); if (rows > 0) { return true; } else { return false; } } /// <summary> /// 删除一条数据 /// </summary> public bool Delete(<#=CodeCommon.GetInParameter(host.Keys, true)#>) { StringBuilder strSql=new StringBuilder(); strSql.Append("delete from <#= host.TableName #> "); strSql.Append(" where <#= CodeCommon.GetWhereParameterExpression(host.Keys, true, host.DbType)#>"); <#= CodeCommon.GetPreParameter(host.Keys, true, host.DbType) #> int rows=DBExecuteUtil.ExecuteSqlWithParams(strSql.ToString(),parameters); if (rows > 0) { return true; } else { return false; } } <#if (identityKey!=null) {#> /// <summary> /// 批量删除一批数据 /// </summary> public bool DeleteList(string <#=identityKey.ColumnName#>list ) { StringBuilder strSql=new StringBuilder(); strSql.Append("delete from <#= host.TableName #> "); strSql.Append(" where ID in ("+<#=identityKey.ColumnName#>list + ") "); int rows=<#= host.DbHelperName#>.ExecuteSql(strSql.ToString()); if (rows > 0) { return true; } else { return false; } } <#}#> /// <summary> /// 得到一个对象实体 /// </summary> public <#= host.TableName #>Entity GetModel(<#= CodeCommon.GetInParameter(host.Keys,true) #>) { StringBuilder strSql=new StringBuilder(); strSql.Append("select <# for(int i=0;i< host.Fieldlist.Count;i++) { #><#= host.Fieldlist[i].ColumnName #><# if(i< host.Fieldlist.Count-1 ) {#>,<# } #> <#}#> "); strSql.Append(" from <#= host.TableName #> "); strSql.Append(" where <#= CodeCommon.GetWhereParameterExpression(host.Keys, true, host.DbType) #>"); <#=CodeCommon.GetPreParameter(host.Keys, true, host.DbType)#> <#= host.TableName #>Entity model=new <#= host.TableName #>Entity(); DataTable dt = DBExecuteUtil.querySqlTable(strSql.ToString(),parameters); if(dt.Rows.Count>0) { <# foreach (ColumnInfo c in host.Fieldlist) { #> <# if(CodeCommon.DbTypeToCS(c.TypeName)=="int"|| CodeCommon.DbTypeToCS(c.TypeName)=="long"|| CodeCommon.DbTypeToCS(c.TypeName)=="float"|| CodeCommon.DbTypeToCS(c.TypeName)=="DateTime"|| CodeCommon.DbTypeToCS(c.TypeName)=="decimal") {#> if(dt.Rows[0]["<#=c.ColumnName#>"].ToString()!="") { model.<#=c.ColumnName#>=<#=CodeCommon.DbTypeToCS(c.TypeName)#>.Parse(dt.Rows[0]["<#=c.ColumnName#>"].ToString()); } <# } #> <# if(CodeCommon.DbTypeToCS(c.TypeName)=="string") {#> model.<#=c.ColumnName#>= dt.Rows[0]["<#=c.ColumnName#>"].ToString(); <# } #> <# if(CodeCommon.DbTypeToCS(c.TypeName)=="byte[]") {#> if(dt.Rows[0]["<#=c.ColumnName#>"].ToString()!="") { model.<#=c.ColumnName#>= (byte[])dt.Rows[0]["<#=c.ColumnName#>"]; } <# } #> <# if(CodeCommon.DbTypeToCS(c.TypeName)=="Guid") {#> if(dt.Rows[0]["<#=c.ColumnName#>"].ToString()!="") { model.<#=c.ColumnName#>= dt.Rows[0]["<#=c.ColumnName#>"].ToString(); } <# } #> <# if(CodeCommon.DbTypeToCS(c.TypeName)=="bool") {#> if(dt.Rows[0]["<#=c.ColumnName#>"].ToString()!="") { if((dt.Rows[0]["<#=c.ColumnName#>"].ToString()=="1")||(dt.Rows[0]["<#=c.ColumnName#>"].ToString().ToLower()=="true")) { model.<#=c.ColumnName#>= true; } else { model.<#=c.ColumnName#>= false; } } <# } #> <# } #> return model; } else { return null; } } /// <summary> /// 获得数据列表 /// </summary> public DataTable GetList(string strWhere) { StringBuilder strSql=new StringBuilder(); strSql.Append("select * "); strSql.Append(" FROM <#= host.TableName #> "); if(strWhere.Trim()!="") { strSql.Append(" where "+strWhere); } return DBExecuteUtil.querySqlTable(strSql.ToString()); } /// <summary> /// 获得前几行数据 /// </summary> public DataTable GetList(int Top,string strWhere,string filedOrder) { StringBuilder strSql=new StringBuilder(); strSql.Append("select "); if(Top>0) { strSql.Append(" top "+Top.ToString()); } strSql.Append(" * "); strSql.Append(" FROM <#= host.TableName #> "); if(strWhere.Trim()!="") { strSql.Append(" where "+strWhere); } strSql.Append(" order by " + filedOrder); return DBExecuteUtil.querySqlTable(strSql.ToString()); } } } <#+ int n=0; #>
Model模版
<#@ template language="c#" HostSpecific="True" #> <#@ output extension= ".cs" #> <# TableHost host = (TableHost)(Host); host.Fieldlist.Sort(CodeCommon.CompareByintOrder); #> using System; using System.Text; using System.Collections.Generic; using System.Data; namespace Model<# if( host.Folder.Length > 0) {#>.<#= host.Folder #><# } #> { <# if( host.TableDescription.Length > 0) {#> //<#= host.TableDescription #> <# } #> public class <#= host.GetModelClass(host.TableName) #>Entity { <# foreach (ColumnInfo c in host.Fieldlist) { #>/// <summary> /// <#= string.IsNullOrEmpty(c.Description) ? c.ColumnName : c.Description #> /// </summary> public <#= CodeCommon.DbTypeToCS(c.TypeName) #> <#= c.ColumnName #>{get;set;} <# } #> } }
BLL模版
<#@ template language="c#" HostSpecific="True" #> <#@ output extension= ".cs" #> <# TableHost host = (TableHost)(Host); string ModelSpace = host.NameSpace+".Model."+ host.GetModelClass(host.TableName); string DALSpace= host.NameSpace+".DAL."+ host.GetDALClass(host.TableName); ColumnInfo identityKey=host.IdentityKey; string returnValue = "void"; if (identityKey!=null) { returnValue = CodeCommon.DbTypeToCS(identityKey.TypeName); } #> using System; using System.Text; using System.Collections.Generic; using System.Data; using DAL; using Model; namespace BLL <# if( host.Folder.Length > 0){ #>.<#= host.Folder #><# } #> { <# if( host.TableDescription.Length > 0) {#> //<#= host.TableDescription #> <# } #> public partial class BLL<#= host.GetBLLClass(host.TableName) #> { private readonly DAL<#= host.TableName #> dal=new DAL<#= host.TableName #>(); public BLL<#= host.GetBLLClass(host.TableName) #>() {} #region Method /// <summary> /// 是否存在该记录 /// </summary> public bool Exists(<#= CodeCommon.GetInParameter(host.Keys, false) #>) { return dal.Exists(<#= CodeCommon.GetFieldstrlist(host.Keys, false)#>); } /// <summary> /// 增加一条数据 /// </summary> public <#= returnValue #> Add(<#= host.TableName #>Entity model) { <#if (identityKey!=null) {#> return dal.Add(model); <#} else {#> dal.Add(model); <#}#> } /// <summary> /// 更新一条数据 /// </summary> public bool Update(<#= host.TableName #>Entity model) { return dal.Update(model); } /// <summary> /// 删除一条数据 /// </summary> public bool Delete(<#=CodeCommon.GetInParameter(host.Keys, true)#>) { return dal.Delete(<#=CodeCommon.GetFieldstrlist(host.Keys, true)#>); } <#if (identityKey!=null) {#> /// <summary> /// 批量删除一批数据 /// </summary> public bool DeleteList(string <#=identityKey.ColumnName#>list ) { return dal.DeleteList(<#=identityKey.ColumnName#>list ); } <#}#> /// <summary> /// 得到一个对象实体 /// </summary> public <#= host.TableName #>Entity GetModel(<#= CodeCommon.GetInParameter(host.Keys,true) #>) { return dal.GetModel(<#=CodeCommon.GetFieldstrlist(host.Keys, true)#>); } /// <summary> /// 得到一个对象实体,从缓存中 /// </summary> //public <#= host.TableName #>Entity GetModelByCache(<#= CodeCommon.GetInParameter(host.Keys,true) #>) //{ // // string CacheKey = "<#= host.TableName #>Model-" + <#=CodeCommon.GetFieldstrlistAdd(host.Keys, true)#>; // object objModel = Common.DataCache.GetCache(CacheKey); // if (objModel == null) // { // try // { // objModel = dal.GetModel(<#=CodeCommon.GetFieldstrlist(host.Keys, true)#>); // if (objModel != null) // { // int ModelCache = Common.ConfigHelper.GetConfigInt("ModelCache"); // Common.DataCache.SetCache(CacheKey, objModel, DateTime.Now.AddMinutes(ModelCache), TimeSpan.Zero); // } // } // catch{} // } // return (<#= host.TableName #>Entity)objModel; //} /// <summary> /// 获得数据列表 /// </summary> public DataTable GetList(string strWhere) { return dal.GetList(strWhere); } /// <summary> /// 获得前几行数据 /// </summary> public DataTable GetList(int Top,string strWhere,string filedOrder) { return dal.GetList(Top,strWhere,filedOrder); } /// <summary> /// 获得数据列表 /// </summary> public List<<#= host.TableName #>Entity> GetModelList(string strWhere) { DataTable dt = dal.GetList(strWhere); return DataTableToList(dt); } /// <summary> /// 获得数据列表 /// </summary> public List<<#= host.TableName #>Entity> DataTableToList(DataTable dt) { List<<#= host.TableName #>Entity> modelList = new List<<#= host.TableName #>Entity>(); int rowsCount = dt.Rows.Count; if (rowsCount > 0) { <#= host.TableName #>Entity model; for (int n = 0; n < rowsCount; n++) { model = new <#= host.TableName #>Entity(); <# foreach (ColumnInfo c in host.Fieldlist) { #> <# if(CodeCommon.DbTypeToCS(c.TypeName)=="int"|| CodeCommon.DbTypeToCS(c.TypeName)=="long"|| CodeCommon.DbTypeToCS(c.TypeName)=="float"|| CodeCommon.DbTypeToCS(c.TypeName)=="DateTime"|| CodeCommon.DbTypeToCS(c.TypeName)=="decimal") {#> if(dt.Rows[n]["<#=c.ColumnName#>"].ToString()!="") { model.<#=c.ColumnName#>=<#=CodeCommon.DbTypeToCS(c.TypeName)#>.Parse(dt.Rows[n]["<#=c.ColumnName#>"].ToString()); } <# } #> <# if(CodeCommon.DbTypeToCS(c.TypeName)=="string") {#> model.<#=c.ColumnName#>= dt.Rows[n]["<#=c.ColumnName#>"].ToString(); <# } #> <# if(CodeCommon.DbTypeToCS(c.TypeName)=="byte[]") {#> if(dt.Rows[n]["<#=c.ColumnName#>"].ToString()!="") { model.<#=c.ColumnName#>= (byte[])dt.Rows[n]["<#=c.ColumnName#>"]; } <# } #> <# if(CodeCommon.DbTypeToCS(c.TypeName)=="Guid") {#> if(dt.Rows[n]["<#=c.ColumnName#>"].ToString()!="") { model.<#=c.ColumnName#>= dt.Rows[n]["<#=c.ColumnName#>"].ToString(); } <# } #> <# if(CodeCommon.DbTypeToCS(c.TypeName)=="bool") {#> if(dt.Rows[n]["<#=c.ColumnName#>"].ToString()!="") { if((dt.Rows[n]["<#=c.ColumnName#>"].ToString()=="1")||(dt.Rows[n]["<#=c.ColumnName#>"].ToString().ToLower()=="true")) { model.<#=c.ColumnName#>= true; } else { model.<#=c.ColumnName#>= false; } } <# } #> <# } #> modelList.Add(model); } } return modelList; } /// <summary> /// 获得数据列表 /// </summary> public DataTable GetAllList() { return GetList(""); } #endregion } }
WEB模版
<Rows> <# int i=0;#> <# foreach (ColumnInfo c in host.Fieldlist) { #> <# if(i%2==0){#> <ext:FormRow ID="frow_<#= c.ColumnName #>" runat="server"> <# } #><Items> <# if(CodeCommon.DbTypeToCS(c.TypeName)=="DateTime") { #> <ext:DatePicker runat="server" Required="true" Label="<#= c.ColumnName #>" EmptyText="限制范围的日期" ID="dp<#= c.ColumnName #>" ShowRedStar="True" Width="200px"></ext:DatePicker> <#} else #> <# if(CodeCommon.DbTypeToCS(c.TypeName)=="bool") { #> <ext:CheckBoxList runat="server" ID="chkl<#= c.ColumnName #>" Label="chk<#= c.ColumnName #>" ShowLabel="true" Width="200px"><ext:CheckItem Text="<#= c.ColumnName #>" /></ext:CheckBoxList> <#} else #> <# if(CodeCommon.DbTypeToCS(c.TypeName)=="string") { #> <ext:TextBox ID="txt<#= c.ColumnName #>" runat="server" Required="true" Label="<#= c.Description == "" ? c.ColumnName : c.Description #>" ShowLabel="true" Width="200px"></ext:TextBox> <#} else #> <# if(CodeCommon.DbTypeToCS(c.TypeName)=="int") { #> <ext:TextBox ID="txt<#= c.ColumnName #>" runat="server" Required="true" RegexPattern="NUMBER" Label="<#= c.Description == "" ? c.ColumnName : c.Description #>" ShowLabel="true" Width="200px"></ext:TextBox> <#}#></Items> <# if(i%2==1||i==host.Fieldlist.Count-1){#> </ext:FormRow> <# } #> <# i++; #> <# } #> <ext:FormRow runat="server"><Items><ext:Button ConfirmText="确认保存?" Id="btnSubmit" Text="" ValidateForms="Form1" runat="server"></ext:Button></Items></ext:FormRow> </Rows> <script src="/js/calendar1.js" type="text/javascript"></script>