从C#中的Listbox更新数据库

时间:2013-11-18 18:21:20

标签: c# asp.net listbox

在我的asp.net网站上我有3个列表框从文本框和数据库中收集项目,用表从列表框1中收集项目。规则是,当我从listbox1中选择项目并单击button5(更改为多个选择) ,项目被添加到数据库中的listbox1Table。问题是当我点击button5并且数据库表没有更新时没有发生任何事情。添加并配置了Gridview和SqlDataSourde。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Collections.Specialized;
using System.Text;
using System.Data;

public partial class Secure : System.Web.UI.Page
{
    private string GetConnectionString()
    {

        return System.Configuration.ConfigurationManager.ConnectionStrings["Database"].ConnectionString;
    }

    private void InsertRecords(StringCollection sc)
    {
        SqlConnection con = new SqlConnection(GetConnectionString());
        StringBuilder sb = new StringBuilder(string.Empty);
        foreach (string item in sc)
        {
            const string sqlStatement = "INSERT INTO Listbox1Table (Komedie) VALUES";
            sb.AppendFormat("{0}('{1}'); ", sqlStatement, item);
        }

        try
        {
            con.Open();
            SqlCommand cmd = new SqlCommand(sb.ToString(), con);
            cmd.CommandType = CommandType.Text;
            cmd.ExecuteNonQuery();
            Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "Script", "alert('Records Successfuly Saved!');", true);
        }

        catch (System.Data.SqlClient.SqlException ex)
        {
            string msg = "Insert Error:";
            msg += ex.Message;
            throw new Exception(msg);
        }
        finally
        {
            con.Close();
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session["New"] != null)
        {
            Label1.Text = Session["New"].ToString();
        }
        else
        {
            Response.Redirect("Login.aspx");
        }
    }
    protected void Button0_Click(object sender, EventArgs e)
    {
        Session["New"] = null;
        Response.Redirect("Login.aspx");
    }
    protected void Button1_Click1(object sender, EventArgs e)
        {
            if (RadioButton1.Checked) 
            {
                int intOdlicz = ListBox1.Items.Count;
                ListItem listaItem = new ListItem(TextBox1.Text.Trim(), Convert.ToString(intOdlicz + 1));
                ListBox1.Items.Add(listaItem);
                TextBox1.Text = "";
            }
            else if (RadioButton2.Checked) 
            {
                int intOdlicz = ListBox1.Items.Count;
                ListItem lista2Item = new ListItem(TextBox1.Text.Trim(), Convert.ToString(intOdlicz + 1));
                ListBox2.Items.Add(lista2Item);
                TextBox1.Text = "";
            }
            else if (RadioButton3.Checked) 
            {
                int intOdlicz = ListBox1.Items.Count;
                ListItem lista3Item = new ListItem(TextBox1.Text.Trim(), Convert.ToString(intOdlicz + 1));
                ListBox3.Items.Add(lista3Item);
                TextBox1.Text = "";
            }
        }

        protected void Button2_Click(object sender, EventArgs e)
        {
            {
                ListBox1.Items.Clear();
                ListBox2.Items.Clear();
                ListBox3.Items.Clear();
            }
        }

        protected void Button3_Click(object sender, EventArgs e)
        {
            List<ListItem> lista = new List<ListItem>(ListBox1.Items.Cast<ListItem>());
            if (ListBox1.Items.Count > 0)
            {
                lista = lista.OrderBy(li => li.Text).ToList<ListItem>();
                ListBox1.Items.Clear();
                ListBox1.Items.AddRange(lista.ToArray<ListItem>());
            }

            List<ListItem> lista2 = new List<ListItem>(ListBox2.Items.Cast<ListItem>());
            if (ListBox2.Items.Count > 0)
            {
                lista2 = lista2.OrderBy(li => li.Text).ToList<ListItem>();
                ListBox2.Items.Clear();
                ListBox2.Items.AddRange(lista2.ToArray<ListItem>());
            }
            List<ListItem> lista3 = new List<ListItem>(ListBox3.Items.Cast<ListItem>());
            if (ListBox3.Items.Count > 0)
            {
                lista3 = lista3.OrderBy(li => li.Text).ToList<ListItem>();
                ListBox3.Items.Clear();
                ListBox3.Items.AddRange(lista3.ToArray<ListItem>());
            }
        }

        protected void Button4_Click(object sender, EventArgs e)
        {

            if (ListBox1.SelectedIndex != -1)
            {
                ListBox1.Items.Remove(ListBox1.SelectedItem);
            }
            if (ListBox2.SelectedIndex != -1)
            {
                ListBox2.Items.Remove(ListBox2.SelectedItem);
            }
            if (ListBox3.SelectedIndex != -1)
            {
                ListBox3.Items.Remove(ListBox3.SelectedItem);
            }

            ListBox3.Focus();
        }
        protected void Button5_Click(object sender, EventArgs e)
        {
            StringCollection sc = new StringCollection();

            foreach (ListItem item in ListBox1.Items)
            {
                if (item.Selected)
                {
                    sc.Add(item.Text);
                }
            }
            InsertRecords(sc);
        }
        }

0 个答案:

没有答案