zoukankan      html  css  js  c++  java
  • 自动代码模板文件

    bll:

    <#@ template language="c#" HostSpecific="True" #>
    <#@ output extension= ".cs" #>
    <#
        TableHost host = (TableHost)(Host);        
        string ModelSpace = "Model."+ host.GetModelClass(host.TableName);
        string DALSpace="DAL."+ host.GetDALClass(host.TableName);
        ColumnInfo identityKey=host.IdentityKey;
        string returnValue = "void";
        if (identityKey!=null)
        {         
             returnValue = CodeCommon.DbTypeToCS(identityKey.TypeName);              
        }
    #>
    using System; 
    using System.Data;
    using System.Collections.Generic; 
    using Model;
    using DAL;
    namespace BLL <# if( host.Folder.Length > 0){ #>.<#= host.Folder #><# } #>
    {
        <# if( host.TableDescription.Length > 0) {#>
         //<#= host.TableDescription #>
        <# } #>
        public partial class <#= host.GetBLLClass(host.TableName) #>
        {
            private readonly <#= DALSpace #> dal=new <#= DALSpace #>();
            public <#= 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(<#= ModelSpace #> model)
            {
                <#if (identityKey!=null) {#>return dal.Add(model);<#} else {#>dal.Add(model);<#}#>            
            }
    
            /// <summary>
            /// 更新一条数据
            /// </summary>
            public bool Update(<#= ModelSpace #> 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 <#= ModelSpace #> GetModel(<#= CodeCommon.GetInParameter(host.Keys,true) #>)
            {
                return dal.GetModel(<#=CodeCommon.GetFieldstrlist(host.Keys, true)#>);
            }
    
            /// <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<<#= ModelSpace #>> GetModelList(string strWhere)
            {
                DataTable dt = dal.GetList(strWhere);
                return DataTableToList(dt);
            }
            /// <summary>
            /// 获得数据列表
            /// </summary>
            public List<<#= ModelSpace #>> DataTableToList(DataTable dt)
            {
                List<<#= ModelSpace #>> modelList = new List<<#= ModelSpace #>>();
                int rowsCount = dt.Rows.Count;
                if (rowsCount > 0)
                {
                    <#= ModelSpace #> model;
                    for (int n = 0; n < rowsCount; n++)
                    {
                        model = new <#= ModelSpace #>();                    
                        <# 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("");
            }
            
            /// <summary>
            /// GetPage("gs_id>3", "gs_id", "order by gs_id", 2, 3, out recordCount, out pageCount);
            /// </summary>
            /// <param name="Where">"" or "gs_id>3"</param>
            /// <param name="IndexField">"gs_id"</param>
            /// <param name="OrderFields">"order by gs_id" or "order by gs_id desc"</param>
            /// <param name="PageIndex">2</param>
            /// <param name="PageSize">3</param>
            /// <param name="RecordCount">out recordCount</param>
            /// <param name="PageCount">out pageCount</param>
            /// <returns></returns>
            public DataTable GetPage(string Where, string IndexField, string OrderFields, int PageIndex, int PageSize, out int RecordCount, out int PageCount)
            {
                return dal.GetPage(Where, IndexField, OrderFields, PageIndex, PageSize, out RecordCount, out PageCount);
            }
    #endregion
       
        }
    }

    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 = "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 DBUtilityLB;
    namespace DAL  
    <# if( host.Folder.Length > 0){ #>
        .<#= host.Folder #>
    <# } #>
    {
        <# if( host.TableDescription.Length > 0) {#>
         //<#= host.TableDescription #>
        <# } #>
        public partial class <#= 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) #>
                object ret = <#= host.DbHelperName#>.ExecuteScalar(CommandType.Text, strSql.ToString(), parameters);
                return (int)ret == 0 ? false : true;
            }
            
                    
            
            /// <summary>
            /// 增加一条数据
            /// </summary>
            public <#= returnValue #> Add(<#= ModelSpace #> 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#>.ExecuteScalar(CommandType.Text, 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 {#>
                <#= host.DbHelperName#>.ExecuteNonQuery(CommandType.Text, strSql.ToString(), parameters);
                <#}#>            
            }
            
            
            /// <summary>
            /// 更新一条数据
            /// </summary>
            public bool Update(<#= ModelSpace #> model)
            {
                StringBuilder strSql=new StringBuilder();
                strSql.Append("update <#= host.TableName #> set ");
                <# for(int i=0;i< host.Fieldlist.Count;i++)
                {   ColumnInfo c = host.Fieldlist[i]; #>
                <# if (!c.IsIdentity) {#>            
                strSql.Append(" <#= c.ColumnName #> = <#=preParameter#><#=c.ColumnName#> <# if (i< host.Fieldlist.Count-1 ) {#>,<#}#> ");<# }#>
                <# }#>            
                strSql.Append(" where <#= CodeCommon.GetWhereParameterExpression(host.Keys, true ,host.DbType) #> ");
                            
    SqlParameter[] parameters = {
                <# for(int i=0;i< host.Fieldlist.Count;i++)
                {   ColumnInfo c = host.Fieldlist[i]; #>
                new SqlParameter("<#=preParameter#><#=c.ColumnName#>", SqlDbType.<#=CodeCommon.DbTypeLength(host.DbType, c.TypeName, c.Length)#>) <# if (i< host.Fieldlist.Count-1 ) {#>,<#}#>
                
                <# }#>  
                };
                <# n=0; #>
                <# foreach (ColumnInfo c in host.Fieldlist) { #>            
                parameters[<#= n #>].Value = model.<#=c.ColumnName#>;<# n=n+1; #>
                <# }#>
                
                int rows=<#= host.DbHelperName#>.ExecuteNonQuery(CommandType.Text, strSql.ToString(), parameters);
                return rows > 0 ? true : 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=<#= host.DbHelperName#>.ExecuteNonQuery(CommandType.Text, strSql.ToString(), parameters);
                return rows > 0 ? true : 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#>.ExecuteNonQuery(CommandType.Text, strSql.ToString(),null);
                return rows > 0 ? true : false;
            }
            <#}#>
            
            
            /// <summary>
            /// 得到一个对象实体
            /// </summary>
            public <#= ModelSpace #> 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)#>
                
                <#=ModelSpace#> model=null;
                DataTable dt=<#= host.DbHelperName#>.ExecuteTable(CommandType.Text, strSql.ToString(), parameters);
                
                if(dt.Rows.Count>0)
                {
                    model=new <#=ModelSpace#>();
                    <# 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;
            }
            
            
            /// <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 <#= host.DbHelperName#>.ExecuteTable(CommandType.Text, strSql.ToString(), null);
            }
            
            /// <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 <#= host.DbHelperName#>.ExecuteTable(CommandType.Text, strSql.ToString(), null);
            }
            
            /// <summary>
            /// GetPage("gs_id>3", "gs_id", "order by gs_id", 2, 3, out recordCount, out pageCount);
            /// </summary>
            /// <param name="Where">"" or "gs_id>3"</param>
            /// <param name="IndexField">"gs_id"</param>
            /// <param name="OrderFields">"order by gs_id" or "order by gs_id desc"</param>
            /// <param name="PageIndex">2</param>
            /// <param name="PageSize">3</param>
            /// <param name="RecordCount">out recordCount</param>
            /// <param name="PageCount">out pageCount</param>
            /// <returns></returns>
            public DataTable GetPage(string Where, string IndexField, string OrderFields, int PageIndex, int PageSize, out int RecordCount, out int PageCount)
            {
                string SqlTablesAndWhere = string.IsNullOrEmpty(Where.Trim()) ? "<#= host.TableName #>" : "<#= host.TableName #> where " + Where;
                return DbHelperSQL.ExecutePage("*", SqlTablesAndWhere, IndexField, OrderFields, PageIndex, PageSize, out RecordCount, out PageCount, null);
            }
        }
    }
    <#+
    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
    {
        //goodsMaster
        public class <#= host.GetModelClass(host.TableName) #>
        {
    <# foreach (ColumnInfo c in host.Fieldlist){#>
            private <#= CodeCommon.DbTypeToCS(c.TypeName) #> _<#= c.ColumnName.ToString().ToLower() #>;
            public <#= CodeCommon.DbTypeToCS(c.TypeName) #> <#= c.ColumnName #>
            {
                get { return _<#= c.ColumnName.ToString().ToLower()#>; }
                set { _<#= c.ColumnName.ToString().ToLower()#> = value; }
            }
            
    <#}#>
        }
    }

    oc model

    <#@ template language="c#" HostSpecific="True" #>
    <#@ output extension= ".h" #>
    <#
        TableHost host = (TableHost)(Host);
        host.Fieldlist.Sort(CodeCommon.CompareByintOrder);
    #>
    #import <Foundation/Foundation.h>
    @interface LSModel_<#= host.GetModelClass(host.TableName) #> : NSObject
    <# foreach (ColumnInfo c in host.Fieldlist){#>
    <#if(CodeCommon.DbTypeToCS(c.TypeName)=="int"){#>
    @property (nonatomic)NSInteger <#= c.ColumnName.ToString()#>;
    <#}
    else if(CodeCommon.DbTypeToCS(c.TypeName)=="string"){#>
    @property (strong,nonatomic) NSString *<#= c.ColumnName.ToString()#>;
    <#}
    else if(CodeCommon.DbTypeToCS(c.TypeName)=="decimal"){#>
    @property (nonatomic) float <#= c.ColumnName.ToString()#>;
    <#}
    else if(CodeCommon.DbTypeToCS(c.TypeName)=="DateTime"){#>
    @property (strong,nonatomic) NSDate * <#= c.ColumnName.ToString()#>;
    <#}
    else{#>
    @property (strong,nonatomic) NSString *<#= c.ColumnName.ToString()#>;
    <#}#>
    <#}#>
    @end

    ocmodel -impl

    <#@ template language="c#" HostSpecific="True" #>
    <#@ output extension= ".m" #>
    <#
        TableHost host = (TableHost)(Host);
        host.Fieldlist.Sort(CodeCommon.CompareByintOrder);
    #>
    #import "<#= host.GetModelClass(host.TableName) #>.h"
    
    @implementation LSModel_<#= host.GetModelClass(host.TableName) #>
    
    @end

    view bll

    <#@ template language="c#" HostSpecific="True" #>
    <#@ output extension= ".cs" #>
    <#
        TableHost host = (TableHost)(Host);        
        string ModelSpace = "Model."+ host.GetModelClass(host.TableName);
        string DALSpace="DAL."+ host.GetDALClass(host.TableName);
        ColumnInfo identityKey=host.IdentityKey;
        string returnValue = "void";
        if (identityKey!=null)
        {         
             returnValue = CodeCommon.DbTypeToCS(identityKey.TypeName);              
        }
    #>
    using System; 
    using System.Data;
    using System.Collections.Generic; 
    using Model;
    using DAL;
    namespace BLL <# if( host.Folder.Length > 0){ #>.<#= host.Folder #><# } #>
    {
        <# if( host.TableDescription.Length > 0) {#>
         //<#= host.TableDescription #>
        <# } #>
        public partial class <#= host.GetBLLClass(host.TableName) #>
        {
            private readonly <#= DALSpace #> dal=new <#= DALSpace #>();
            public <#= host.GetBLLClass(host.TableName) #>()
            {}
            
            #region  Method
            /// <summary>
            /// 是否存在该记录
            /// </summary>
            public bool Exists(<#= CodeCommon.GetInParameter(host.Keys, true) #>)
            {
                return dal.Exists(<#= CodeCommon.GetFieldstrlist(host.Keys, true)#>);
            }
    
            /// <summary>
            /// 得到一个对象实体
            /// </summary>
            public <#= ModelSpace #> GetModel(<#= CodeCommon.GetInParameter(host.Keys,true) #>)
            {
                return dal.GetModel(<#=CodeCommon.GetFieldstrlist(host.Keys, true)#>);
            }
    
            /// <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<<#= ModelSpace #>> GetModelList(string strWhere)
            {
                DataTable dt = dal.GetList(strWhere);
                return DataTableToList(dt);
            }
            /// <summary>
            /// 获得数据列表
            /// </summary>
            public List<<#= ModelSpace #>> DataTableToList(DataTable dt)
            {
                List<<#= ModelSpace #>> modelList = new List<<#= ModelSpace #>>();
                int rowsCount = dt.Rows.Count;
                if (rowsCount > 0)
                {
                    <#= ModelSpace #> model;
                    for (int n = 0; n < rowsCount; n++)
                    {
                        model = new <#= ModelSpace #>();                    
                        <# 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("");
            }
            
            /// <summary>
            /// GetPage("gs_id>3", "gs_id", "order by gs_id", 2, 3, out recordCount, out pageCount);
            /// </summary>
            /// <param name="Where">"" or "gs_id>3"</param>
            /// <param name="IndexField">"gs_id"</param>
            /// <param name="OrderFields">"order by gs_id" or "order by gs_id desc"</param>
            /// <param name="PageIndex">2</param>
            /// <param name="PageSize">3</param>
            /// <param name="RecordCount">out recordCount</param>
            /// <param name="PageCount">out pageCount</param>
            /// <returns></returns>
            public DataTable GetPage(string Where, string IndexField, string OrderFields, int PageIndex, int PageSize, out int RecordCount, out int PageCount)
            {
                return dal.GetPage(Where, IndexField, OrderFields, PageIndex, PageSize, out RecordCount, out PageCount);
            }
    #endregion
       
        }
    }

    view 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 = "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 DBUtilityLB;
    namespace DAL  
    <# if( host.Folder.Length > 0){ #>
        .<#= host.Folder #>
    <# } #>
    {
        <# if( host.TableDescription.Length > 0) {#>
         //<#= host.TableDescription #>
        <# } #>
        public partial class <#= host.GetDALClass(host.TableName) #>
        {
                    
            public bool Exists(<#= CodeCommon.GetInParameter(host.Keys, true) #>)
            {
                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, true, host.DbType) #>
                object ret = <#= host.DbHelperName#>.ExecuteScalar(CommandType.Text, strSql.ToString(), parameters);
                return (int)ret == 0 ? false : true;
            }
    
            /// <summary>
            /// 得到一个对象实体
            /// </summary>
            public <#= ModelSpace #> 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)#>
                
                <#=ModelSpace#> model=null;
                DataTable dt=<#= host.DbHelperName#>.ExecuteTable(CommandType.Text, strSql.ToString(), parameters);
                
                if(dt.Rows.Count>0)
                {
                    model=new <#=ModelSpace#>();
                    <# 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;
            }
            
            
            /// <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 <#= host.DbHelperName#>.ExecuteTable(CommandType.Text, strSql.ToString(), null);
            }
            
            /// <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 <#= host.DbHelperName#>.ExecuteTable(CommandType.Text, strSql.ToString(), null);
            }
            
            /// <summary>
            /// GetPage("gs_id>3", "gs_id", "order by gs_id", 2, 3, out recordCount, out pageCount);
            /// </summary>
            /// <param name="Where">"" or "gs_id>3"</param>
            /// <param name="IndexField">"gs_id"</param>
            /// <param name="OrderFields">"order by gs_id" or "order by gs_id desc"</param>
            /// <param name="PageIndex">2</param>
            /// <param name="PageSize">3</param>
            /// <param name="RecordCount">out recordCount</param>
            /// <param name="PageCount">out pageCount</param>
            /// <returns></returns>
            public DataTable GetPage(string Where, string IndexField, string OrderFields, int PageIndex, int PageSize, out int RecordCount, out int PageCount)
            {
                string SqlTablesAndWhere = string.IsNullOrEmpty(Where.Trim()) ? "<#= host.TableName #>" : "<#= host.TableName #> where " + Where;
                return DbHelperSQL.ExecutePage("*", SqlTablesAndWhere, IndexField, OrderFields, PageIndex, PageSize, out RecordCount, out PageCount, null);
            }
        }
    }
    <#+
    int n=0;
    #>

    java model

    :

    <#@ template language="c#" HostSpecific="True" #>
    <#@ output extension= ".h" #>
    <#
        TableHost host = (TableHost)(Host);
        host.Fieldlist.Sort(CodeCommon.CompareByintOrder);
    #>
    package app.model;
    import java.util.Date;
    public class <#= host.GetModelClass(host.TableName) #>
    {
    <# foreach (ColumnInfo c in host.Fieldlist){#>
    <#if(CodeCommon.DbTypeToCS(c.TypeName)=="int"){#>
    public int <#= c.ColumnName.ToString()#>;
    <#}
    else if(CodeCommon.DbTypeToCS(c.TypeName)=="string"){#>
    public String <#= c.ColumnName.ToString()#>;
    <#}
    else if(CodeCommon.DbTypeToCS(c.TypeName)=="decimal"){#>
    public float <#= c.ColumnName.ToString()#>;
    <#}
    else if(CodeCommon.DbTypeToCS(c.TypeName)=="DateTime"){#>
    public Date <#= c.ColumnName.ToString()#>;
    <#}
    else{#>
    public String <#= c.ColumnName.ToString()#>;
    <#}#>
    <#}#>
    }
  • 相关阅读:
    Tips on Hair and Final gathering
    数学公式和符号的念法
    How to use Intel C++ Compiler in Visual Studio 2008
    Number Prefixes in Mathematics
    Glossy reflections/refractions in large scene
    atomic flushing data
    elvish Template Library Plan
    [Maxim07]中光线与三角形求交算法的推导
    C# 关闭窗体立即停止进程
    MS SQL 索引设计的准则
  • 原文地址:https://www.cnblogs.com/lsfv/p/9561462.html
Copyright © 2011-2022 走看看