gpt4 book ai didi

c# - 使用 SQL WHERE IN 从 CheckboxList 中检索多个值

转载 作者:太空宇宙 更新时间:2023-11-03 17:05:08 26 4
gpt4 key购买 nike

<分区>

我在程序中检索多个复选框值时遇到问题。因此,正如您在下面看到的,我正在尝试根据复选框列表中的一组值从我的数据库中检索。

如果我选择一个复选框值,数据库将能够检索该项目,但是如果我选择多个复选框值,则不会出现任何内容。有人能帮助我吗?我在这上面花了很多时间。

我看过其他解决方案,但似乎对我没有帮助。谢谢。

protected void chkBoxCategories_SelectedIndexChanged(object sender, EventArgs e)
{
// Create the list to store.
List<String> YrStrList = new List<string>();

// Loop through each item.
foreach (ListItem item in chkBoxCategories.Items)
{
if (item.Selected)
{
// If the item is selected, add the value to the list.
YrStrList.Add(item.Value);
}
else
{
// Item is not selected, do something else.
}
}

// Join the string together using the ; delimiter.
Session["UPCategories"] = String.Join(", ", YrStrList.ToArray());
}

以下代码在其他页面:

SqlDataSource1.SelectCommand = "SELECT sf.*, sfc.* FROM SkillsFuture sf INNER JOIN SkillsFutureCategory sfc ON sfc.SFCatID = sf.fkSFCatID WHERE sfc.SFCatName IN (@catnames) AND sf.SFPrice BETWEEN @min AND @max AND sf.SFCertStatus='Verified'";

SqlDataSource1.SelectParameters.Add("catnames", Session["UPCategories"].ToString());
SqlDataSource1.SelectParameters.Add("min", Convert.ToDecimal(Session["UPBudgetMin"]).ToString());
SqlDataSource1.SelectParameters.Add("max", Convert.ToDecimal(Session["UPBudgetMax"]).ToString());

SqlDataSource1.DataBind();

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com