前台页面:
public class SearchModel
{
public string Name { get; set; }//记录数据库字段名
public string Value { get; set; }//记录对应的值
}
List<SearchModel> ss = new List<SearchModel>();
protected void btn_search_Click(object sender, EventArgs e)
{
if (txb_posi.Text != "填写职位")
{
SearchModel sm = new SearchModel();
sm.Name = "vc_Position";
sm.Value = txb_posi.Text;
ss.Add(sm);
}
if (txb_company.Text != "填写公司名")
{
SearchModel sm = new SearchModel();
sm.Name = "vc_BusinessName";
sm.Value = txb_company.Text;
ss.Add(sm);
}
if (txb_loc.Text != "填写地区")
{
SearchModel sm = new SearchModel();
sm.Name = "vc_JobArea";
sm.Value = txb_loc.Text;
ss.Add(sm);
}
if (ddl_trade.SelectedItem.Text != "选择职位类型")
{
SearchModel sm = new SearchModel();
sm.Name = "vc_Trade";
sm.Value = ddl_trade.SelectedItem.Text;
ss.Add(sm);
}
if (ddl_trade.SelectedItem.Text== "选择职位类型" && txb_posi.Text == "填写职位" && txb_company.Text == "填写公司名" && txb_loc.Text == "填写地区")
{
SQLHelper.BindRepeater(rpt_posi, SQLHelper.ConnectionStringLocalTransaction, CommandType.Text,
@"select top 10 * from BusinessNews order by vc_BeginTime desc", null);
}
else
{
SQLHelper.BindRepeater(rpt_posi, SQLHelper.ConnectionStringLocalTransaction, CommandType.Text,
SearchSql(ss), null);
}
}
public string SearchSql(List<SearchModel> ss)
{
int i;
string sql = "select top 10 * from BusinessNews where ";//开始拼接sql语句
for( i=0;i<ss.Count;i++)
{
sql += ss[i].Name + " like '%" + ss[i].Value + "%'";
if (i != ss.Count - 1) sql += " and ";
}
sql += " order by vc_BeginTime desc";
return sql;
}
参考网址:https://www.jb51.net/article/51995.htm