动态创建的CheckBoxList并插入到数据库 [英] Create checkboxlist dynamically and insert into database

查看:122
本文介绍了动态创建的CheckBoxList并插入到数据库的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经创建标签的CheckBox ......
但我想将CheckBox值存储为0或1开或检查后,关到SQL Server .....
我怎么能??

I have created Labels, CheckBoxes...... but I want to store the CheckBox values as 0 or 1 for 'on' or 'off' into sql server after check..... how can I??

   protected void EventDuration_DDL_SelectedIndexChanged(object sender, EventArgs e)
    {
        con.Open();
        DateTime dt = DateTime.Parse(StartDate_TB.Text);

        int n = Int32.Parse(EventDuration_DDL.SelectedItem.ToString());
        for (int i = 0; i < n; i++)
        {

            Label NewLabel = new Label();
            NewLabel.ID = "Label" + i;
            var eventDate = dt.AddDays(i);
            NewLabel.Text = eventDate.ToLongDateString();

            CheckBox newcheck = new CheckBox();
            newcheck.ID = "CheckBox" + i;
            newcheck.AutoPostBack = true;
            newcheck.CausesValidation = false;
            newcheck.CheckedChanged += new EventHandler(newcheck_CheckedChanged);
            this.Labeldiv.Controls.Add(new LiteralControl("<span class='h1size'>"));
            this.Labeldiv.Controls.Add(NewLabel);
            this.Labeldiv.Controls.Add(new LiteralControl("</span>"));
            this.Labeldiv.Controls.Add(new LiteralControl("<div class='make-switch pull-right' data-on='info'>"));
            this.Labeldiv.Controls.Add(newcheck);
            this.Labeldiv.Controls.Add(new LiteralControl("</div>"));
            this.Labeldiv.Controls.Add(new LiteralControl("<br/>"));
        }

        con.Close();
    }

    void newcheck_CheckedChanged(object sender, EventArgs e)
    {
        CheckBox currentCheckbox = sender as CheckBox;
        string extractInteger = Regex.Match(currentCheckbox.ID, @"\d+").Value;
        Label currentlabel = (Label)Labeldiv.FindControl("Label" + extractInteger);
        con.Open();

        int n = Int32.Parse(EventDuration_DDL.SelectedItem.ToString());
        for (int i = 0; i < n; i++)
        {
            SqlCommand cmd = new SqlCommand("insert into EventDays(EventDay,EventStatus)values(@EventDay,@EventStatus)", con);
            cmd.Parameters.AddWithValue("@EventDay", currentlabel.Text);
            cmd.Parameters.AddWithValue("@EventStatus", currentCheckbox.Checked ? "true" : "false");
            cmd.ExecuteNonQuery();

        }
        con.Close();
    }

复选框,必须创建一个基于DDL的选择......如果我们选择6,然后6复选框必须建立,在这之后,当我们选中复选框,则值必须存储到SQL服务器....

the checkboxes must create based on the ddl selection.... If we select 6 then 6 checkboxes must create, after that when we check the checkbox then the values must store into the sql-server....

中的值并没有存储到SQL Server中......

The values did not stored into sql server......

推荐答案

假设 EventStatus 是一个数字列,我能想到的最懒的解决方案

Assuming EventStatus is a numeric column, the laziest solution I can think of is

cmd2.Parameters.AddWithValue("@EventStatus", newcheck.Checked ? 1 : 0);

这篇关于动态创建的CheckBoxList并插入到数据库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆