asp.net - 将所有 CheckBoxList 数据插入数据库
问题描述
我有一个用户将填写的表单,当他们提交时,所有数据都被推送到数据库。
我的问题是我有一个 CheckBoxList,如果用户选择多个复选框,它只会将第一项输入到数据库中。如何使所有项目输入到同一行并用逗号分隔。
这是我当前的代码:
protected void Button1_Click(object sender, EventArgs e)
{
//Start Code
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = System.Data.CommandType.Text;
cmd.CommandText = conString + txtFirst.Text + "','" + txtLast.Text +
"','" + txtEmail.Text + "','" + lstBranch.Text + "','" + lstAccess.Text + "')";
cmd.ExecuteNonQuery();
con.Close();
}
解决方案
您可以像这样循环项目
string result = string.Empty;
for (int i = 0; i < checkboxlist1.Items.Count; i++)
{
if (checkboxlist1.Items[i].Selected)
{
result += checkboxlist1.Items[i].Text + ", ";
}
}
// remove the final comma.
// add 'result' to your sql stmt.
推荐阅读
- ruby - 如何匹配看起来像列的非结构化字符串中的 2 个键值对
- amazon-web-services - 在 CFN 资源提供程序测试中创建 S3 存储桶时出现 IllegalLocationConstraintException
- android - 如何以编程方式查找重复文件?
- java - 仅使用 org.apache.commons.math3 计算马氏距离
- javascript - 在谷歌地图上的多个标记之间画线
- algorithm - 从多个数组中查找 k 个最大值和最小值
- javascript - 无法添加外键约束 - SEQUELIZE
- reactjs - 推断客户端组件中第三方组件的转发引用类型
- angular - 使用 .forRoot() 配置外部 Angular 库,该库依赖于用于填充配置值的主应用程序服务
- c# - c#monogame如何让相机在玩家后面慢慢重置位置