如何使用多个CheckBoxList进行产品过滤?

时间:2017-04-08 16:16:36

标签: c# asp.net

此代码是使用一个checkboxlist Item过滤产品页面。我想使用此代码并过滤带有多个checkboxlist项目的产品页面。

示例:

产品名称:鞋子,衬衫,包等

品牌名称:nike,adidas等。

适用于:男性,女性,儿童等

感谢您的帮助。

代码:

private void Bind()
    {
        string constr = ConfigurationManager.ConnectionStrings["CS"].ConnectionString;
        string query = "SELECT Id, ModelName FROM Model";

        string emStr = string.Empty;
        foreach (ListItem item in chkModel.Items)
        {
            emStr += item.Selected ? string.Format("'{0}',", item.Value) : string.Empty;
        }

        if (!string.IsNullOrEmpty(emStr))
        {
            emStr = string.Format(" WHERE Id IN ({0})", emStr.Substring(0, emStr.Length - 1));
        }

        using (SqlConnection con = new SqlConnection(constr))
        {
            using (SqlCommand cmd = new SqlCommand(query + emStr))
            {
                using (SqlDataAdapter sda = new SqlDataAdapter(cmd))
                {
                    cmd.Connection = con;
                    using (DataTable dt = new DataTable())
                    {
                        sda.Fill(dt);
                        GridView1.DataSource = dt;
                        GridView1.DataBind();
                    }
                }
            }
        }
    }

0 个答案:

没有答案