动软代码生成器-生成模型填充代码

让开发者方便地生成数据层填充代码
<#@ template language="c#" HostSpecific="True" #>
<#@ output extension= ".cs" #>
<#
    TableHost host = (TableHost)(Host);    
    host.NameSpace = "SPC";
    string DbParaHead=host.DbParaHead;
    string DbParaDbType=host.DbParaDbType;
    string preParameter=host.preParameter;
    string ModelSpace = host.GetModelClass(host.TableName);
    ColumnInfo identityKey=host.IdentityKey;
    string returnValue = "void";
    if (identityKey!=null)
    {         
         returnValue = CodeCommon.DbTypeToCS(identityKey.TypeName);              
    }
#>
/// <summary>
/// Fill the model
/// </summary>
private void Fill<#=ModelSpace#>(<#=ModelSpace#> model, DataRow dr)
{
        <# 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(dr["<#=c.ColumnName#>"].ToString()!="")
        {
            model.<#=c.ColumnName#>=<#=CodeCommon.DbTypeToCS(c.TypeName)#>.Parse(dr["<#=c.ColumnName#>"].ToString());
        }
        <# } #>
        <# if(CodeCommon.DbTypeToCS(c.TypeName)=="string") {#>
        model.<#=c.ColumnName#>= dr["<#=c.ColumnName#>"].ToString();
        <# } #>
        <# if(CodeCommon.DbTypeToCS(c.TypeName)=="byte[]") {#>
        if(dr["<#=c.ColumnName#>"].ToString()!="")
        {
            model.<#=c.ColumnName#>= (byte[])dr["<#=c.ColumnName#>"];
        }
        <# } #>
        <# if(CodeCommon.DbTypeToCS(c.TypeName)=="Guid") {#>
        if(dr["<#=c.ColumnName#>"].ToString()!="")
        {
            model.<#=c.ColumnName#>= dr["<#=c.ColumnName#>"].ToString();
        }
        <# } #>
        <# if(CodeCommon.DbTypeToCS(c.TypeName)=="bool") {#>
        if(dr["<#=c.ColumnName#>"].ToString()!="")
        {
            if((dr["<#=c.ColumnName#>"].ToString()=="1")||(dr["<#=c.ColumnName#>"].ToString().ToLower()=="true"))
            {
            model.<#=c.ColumnName#>= true;
            }
            else
            {
            model.<#=c.ColumnName#>= false;
            }
        }
        <# } #>
        <# } #>                        
}

效果:

   /// <summary>
        /// Fill the model
        /// </summary>
        private void Fillf_peitao(f_peitao model, DataRow dr)
        {
            if (dr["id"].ToString() != "")
            {
                model.id = int.Parse(dr["id"].ToString());
            }
            model.f_peitao = dr["f_peitao"].ToString();

        }


 


 

转载于:https://www.cnblogs.com/YuanDong1314/p/8967751.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值