c# – 循环触发插入语句两次

我有一个循环遍历复选框列表中的选择.问题是循环为每个选择触发插入语句两次.因此,如果用户选中一个框,则会插入2行.如果用户选择3个框,则会插入6行,依此类推.我怎样才能确保它每次选择只会触发一次插入?

protected void btn_test_Click(object sender,EventArgs e) {
    sqlCommand cmd = new sqlCommand();
    cmd.CommandText = "Insert into t_ap_line_setup  (line,date) values (@line,getdate())";
    cmd.Connection = this.sqlConnection1;
    this.sqlConnection1.open();
    foreach ( ListItem li in lines_list.Items ) {
        if (li.Selected == true) {
            cmd.Parameters.Clear();
            cmd.Parameters.AddWithValue("@line",li.Text);
            cmd.ExecuteNonQuery();
        }
    }
    this.sqlConnection1.Close();
}

解决方法

看起来循环没有运行两次.我怀疑你的点击处理程序由于重复的事​​件订阅而触发两次.

相关文章

目录简介使用JS互操作使用ClipLazor库创建项目使用方法简单测...
目录简介快速入门安装 NuGet 包实体类User数据库类DbFactory...
本文实现一个简单的配置类,原理比较简单,适用于一些小型项...
C#中Description特性主要用于枚举和属性,方法比较简单,记录...
[TOC] # 原理简介 本文参考[C#/WPF/WinForm/程序实现软件开机...
目录简介获取 HTML 文档解析 HTML 文档测试补充:使用 CSS 选...