【发布时间】:2011-04-07 11:48:53
【问题描述】:
我希望为客户提供搜索,他们可以在其中选择多个类别 (复选框)并仅查看这些类别中的结果 网格视图控件。例如示例将 如果用户检查项目价格 > 100 和价格
问题已解决:
static public DataTable GetSelectedFilter(ArrayList test)
{
string sqldef = "Select * from productDetail Where";
string sql = "";
int check = 0;
int number = test.Count;
string OR = "OR";
//ArrayList arrlist = new ArrayList();
if (test.Count > 0)
{
while (number > check)
{
sql += "((Price between " + test[number - 1] + "))" + OR;
number--;
}
string completeQuery = sqldef + sql;
string sqltest = completeQuery.Substring(0, completeQuery.Length - 2);
string finalQuery = sqltest + "order by Price";
SqlDataAdapter da = new SqlDataAdapter(finalQuery, ConnectionString);
DataTable dt = new DataTable();
da.Fill(dt);
return dt;
}
else
{
string sql1 = "Select * from productDetail";
SqlDataAdapter da = new SqlDataAdapter(sql1, ConnectionString);
DataTable dt = new DataTable();
da.Fill(dt);
return dt;
}
}
【问题讨论】:
-
您目前的查询情况如何? ADO.NET、Linq To SQL、实体框架等?
-
Ado.net: string sql = "Select * from productDetail Where Price>2000 order by Price"; SqlDataAdapter da = new SqlDataAdapter(sql, ConnectionString);数据表 dt = 新数据表(); da.填充(dt);返回 dt;
-
对不起,我无法为剪切和粘贴程序员提供帮助。
-
我从我的代码中剪切和粘贴,而不是来自 ny odar 来源
-
我并不是说代码不是来自您的代码库,而是您似乎不了解基本编程(例如字符串连接),这使我相信代码是大部分是从其他地方复制的,否则你不会问这个问题。
标签: asp.net dynamic-sql datalist checkboxlist