asp.net高级搜索的代码
如下图,商品名称,一级分类,二级分类,是否新品,是否特价。然后搜索。其中的条件可以任意输入或不选择。比如说输入名称:袜子,一级分类和二级分类,是否新品,是否特价都不选择,...
如下图,商品名称,一级分类,二级分类,是否新品,是否特价。然后搜索。
其中的条件可以任意输入或不选择。比如说输入名称:袜子,一级分类和二级分类,是否新品,是否特价都不选择,保持在请选择的状态下。搜索结果为所有带袜子的商品。如果选择一级分类为:袜子。不输入其他的也可以查询到所有为袜子类的商品。也可以全选择输入或选择性的选择并搜索。不选择的话默认为这个条件去掉。
我的DAL层代码:
public DataSet Product_List_Search(Model.product mdl)
{
SqlConnection cn = new SqlConnection(_conectionString);
cn.Open();
SqlDataAdapter da = new SqlDataAdapter("select * from product where Name like @Name and Parents_Name=@Parents_Name and Child_Name=@Child_Name and Is_new=@Is_new and Is_bargain=@Is_bargain", cn);
da.SelectCommand.Parameters.AddWithValue("@Name", mdl.Name);
da.SelectCommand.Parameters.AddWithValue("@Parents_Name", mdl.Parents_name);
da.SelectCommand.Parameters.AddWithValue("@Child_Name", mdl.Child_name);
da.SelectCommand.Parameters.AddWithValue("@Is_new", mdl.Is_new);
da.SelectCommand.Parameters.AddWithValue("@Is_bargain", mdl.Is_bargain);
DataSet ds = new DataSet();
da.Fill(ds);
cn.Close();
return ds;
}
前台搜索按钮事件代码:Bll.product p = new Bll.product();
Model.product mdl = new Model.product();
mdl.Name = ("%" + TextBox1.Text + "%");
mdl.Parents_name = DropDownList1.SelectedItem.Text;
mdl.Child_name = DropDownList2.SelectedItem.Text;
mdl.Is_new = DropDownList3.SelectedItem.Text;
mdl.Is_bargain = DropDownList4.SelectedItem.Text;
GridView1.DataSource = p.Product_List_Search(mdl);
GridView1.DataBind();
textbox1为商品名称。DropDownList1为一级分类。DropDownList2为二级分类。DropDownList3为是否新品。DropDownList4为是否特价。
这么写的话就是必须所有条件都要满足才可以查询到。
比如说:商品名,一级分类,二级分类,是否新品,是否特价所有都要选择和输入才可以查询。缺少一个都不查不到。
看过很多代码:有的写的没有注释并且看不懂。
求一个这样搜索的代码:最好带有注释。关键地方一定要有注释。
要用三层架构做的。
Model,DAl。Bll最好。
谢谢。初学asp。net
写不下代码的可以留下你的qq等联系方式。。 展开
其中的条件可以任意输入或不选择。比如说输入名称:袜子,一级分类和二级分类,是否新品,是否特价都不选择,保持在请选择的状态下。搜索结果为所有带袜子的商品。如果选择一级分类为:袜子。不输入其他的也可以查询到所有为袜子类的商品。也可以全选择输入或选择性的选择并搜索。不选择的话默认为这个条件去掉。
我的DAL层代码:
public DataSet Product_List_Search(Model.product mdl)
{
SqlConnection cn = new SqlConnection(_conectionString);
cn.Open();
SqlDataAdapter da = new SqlDataAdapter("select * from product where Name like @Name and Parents_Name=@Parents_Name and Child_Name=@Child_Name and Is_new=@Is_new and Is_bargain=@Is_bargain", cn);
da.SelectCommand.Parameters.AddWithValue("@Name", mdl.Name);
da.SelectCommand.Parameters.AddWithValue("@Parents_Name", mdl.Parents_name);
da.SelectCommand.Parameters.AddWithValue("@Child_Name", mdl.Child_name);
da.SelectCommand.Parameters.AddWithValue("@Is_new", mdl.Is_new);
da.SelectCommand.Parameters.AddWithValue("@Is_bargain", mdl.Is_bargain);
DataSet ds = new DataSet();
da.Fill(ds);
cn.Close();
return ds;
}
前台搜索按钮事件代码:Bll.product p = new Bll.product();
Model.product mdl = new Model.product();
mdl.Name = ("%" + TextBox1.Text + "%");
mdl.Parents_name = DropDownList1.SelectedItem.Text;
mdl.Child_name = DropDownList2.SelectedItem.Text;
mdl.Is_new = DropDownList3.SelectedItem.Text;
mdl.Is_bargain = DropDownList4.SelectedItem.Text;
GridView1.DataSource = p.Product_List_Search(mdl);
GridView1.DataBind();
textbox1为商品名称。DropDownList1为一级分类。DropDownList2为二级分类。DropDownList3为是否新品。DropDownList4为是否特价。
这么写的话就是必须所有条件都要满足才可以查询到。
比如说:商品名,一级分类,二级分类,是否新品,是否特价所有都要选择和输入才可以查询。缺少一个都不查不到。
看过很多代码:有的写的没有注释并且看不懂。
求一个这样搜索的代码:最好带有注释。关键地方一定要有注释。
要用三层架构做的。
Model,DAl。Bll最好。
谢谢。初学asp。net
写不下代码的可以留下你的qq等联系方式。。 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询