多个条件组合进行搜索,代码量可能比较多、杂,所以可以在判断条件的时候,将参数值保存,最后进行字符串拼接,传到DAL层。
大概有这回事,现在杨老师的课也只是听明白而已了,前面已经有很多节课程没有实践敲写代码了,功课落下了,以后需要了再补,现在没有信心去操作了。。。
List<string>whereList=newList<string>();
List<SqlParameter>paramsList=newList<SqlParameter>();
if(cbSearchByName.IsChecked==true)
{
whereList.Add("Name=@Name");
paramsList.Add(newSqlParameter("@Name",txtName.Text));
}
if(cbSearchByInDate.IsChecked==true)
{
whereList.Add("InDate>=@InDateStartandInDate<=@InDateEnd");
paramsList.Add(newSqlParameter("@InDateStart",dpInDateStart.SelectedDate));
paramsList.Add(newSqlParameter("@InDateEnd",dpInDateEnd.SelectedDate));
}
if(cbSearchByDept.IsChecked==true)
{
whereList.Add("DepartmentId=@DepartmentId");
paramsList.Add(newSqlParameter("@DepartmentId",cmbDept.SelectedValue));
}
stringwhereSql=string.Join("and",whereList);
stringsql="select*fromT_Employee";
if(whereSql.Length>0)
{
sql=sql+"where"+whereSql;
}
Employee[]result=newEmployeeDAL().Search(sql,paramsList);
datagrid.ItemsSource=result;
本文介绍如何在代码中高效地使用参数化方法来构建包含多个条件的搜索语句,通过实例展示了如何将筛选参数转化为SQL查询的一部分,并在实际应用中实现数据检索。
247

被折叠的 条评论
为什么被折叠?



