动态创建一列的代码

博客展示了在C#代码中处理用户审批状态的逻辑,通过遍历DataTable的行,根据`audited`字段值为新列`shenpi`赋值。同时介绍了在SQL查询和创建表时,利用`Case`语句动态创建判断列,以显示成绩是否通过的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  private void Page_Load(object sender, System.EventArgs e)
  {
    AuditUserManager aum = new AuditUserManager();
   DataTable dt = aum.getAllUser();
   DataColumn dc = new DataColumn("shenpi",typeof(String));
   dt.Columns.Add(dc);
   for(int i=0;i<dt.Rows.Count;i++){
    DataRow dr = dt.Rows[i];
    string audited = (string)dr["audited"];
    if("0".Equals(audited)) {
     dr["shenpi"]="未通过审批";
    }
    else if("1".Equals(audited)){
     dr["shenpi"]="已通过审批";
    }

    
   }
   this.DataGrid1.DataSource=dt;

   this.DataGrid1.DataBind();
   // Put user code to initialize the page here
  }



在select的时候,利用sql创建一列
Select *,
        通过 = Case 成绩
    When >=60 Then ‘通过’
    When <60 Then ‘未通过’
  End
   From ... 




如果要求对于开发人员透明
可以在创建表的时候,动态的创建一个判断的字段

Create Table[dbo].[花名册](

 通过 As Case 成绩
  When >=60 Then ‘通过’
  When <60 Then ‘未通过’
 End
   )

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值