各位大侠,帮帮忙,问题如下:
现在有10个考核项目,每个项目分为五个考核等级A、B、C、D、E 还有一个总分
每个考核项目在数据库都是一张表名称为Item1~Item10,每个表字段名是A,B,C,D,E,sum
我把ABCDE做成了一个radiobuttonlist 总分用一个textbox
我的想法是把选中的为1,未选中为0,然后插入到数据库中(SQL)
现在等问题是不知道如何赋值插入,我能想到的代码如下:
foreach (ListItem li in radiobuttonlist1.Items)
{
  if(li.selected)
     {
        li.value=1;
     }
}
数据库插入语句为:
"insert into {0} (A,B,C,D,E,sum) values ({1},{2},{3},{4},{5})",Itemname,A,B,C,D,E,sum
现在不知道那些未选中的等级如何置零然后按照sql语句插入进去
比如我选了A,那么A插入为1,B C D E都插入0 
请各位大侠指教!

解决方案 »

  1.   

    这样List<int> list = new List<int>();
    for(int i=0;i<radiobuttonlist1.Items.Count;i++)
    {
         Listitem item = radiobuttonlist1.Items[i];
         if(li.selected)
        {
               list.Add(1);
        }
        else
    {
    list.Add(0);
    }}数据库插入语句为:
    "insert into {0} (A,B,C,D,E,sum) values ({1},{2},{3},{4},{5})",Itemname,list[0],list[1],list[2],list[3],list[4],sum
      

  2.   

    楼主可以在数据库里设置这些字段默认值为0
    之后在提交按钮里这样string sql="insert into {0} (radiolist.seletedItem.text) values('1')";
    直接这样,不用循环判断
      

  3.   

     string sql = "insert into table (A,B,C,D,E,sum) select";
            for (int i = 0; i < RadioButtonList1.Items.Count; i++)
            {
                if (RadioButtonList1.Items[i].Selected)
                {
                    if (i == 0)
                    {
                        sql += " 1,";
                    }
                    else
                    {
                        sql += "1";
                    }
                }
                sql += " 0,";
            }
      

  4.   


            string sql = "insert into table (A,B,C,D,E,sum) select";
            for (int i = 0; i < RadioButtonList1.Items.Count; i++)
            {
                if (RadioButtonList1.Items[i].Selected)
                {
                    if (i == 0)
                    {
                        sql += " 1,";
                    }
                    else
                    {
                        sql += "1";
                    }
                }
                else
                {
                    sql += " 0,";
                }
            }
            sql+=string.Format('{0}',sum);