vs2008 C# web编程 b/s结构我把SQL查询结果显示在GridView里,然后在GridView的数据中继续查询,该怎么做?
具体这样的:用SqlDataAdapter从底层数据库把数据读到DataSet里,再把DataSet绑定到Gridview
说明:第二次查询,我不想访问底层数据库了,就想在第一次的结果中查询,因为效率问题我想过使用临时表、存储过程等,但是,在临时表里,怎么查询呢?用循环遍历每条记录到可以,但是筛选后怎么绑定到GridView控件里?
还有,select * from...语句能否用于非数据库的查询?我刚接触web编程,很菜的,请大家帮忙,仔细点更好了
具体这样的:用SqlDataAdapter从底层数据库把数据读到DataSet里,再把DataSet绑定到Gridview
说明:第二次查询,我不想访问底层数据库了,就想在第一次的结果中查询,因为效率问题我想过使用临时表、存储过程等,但是,在临时表里,怎么查询呢?用循环遍历每条记录到可以,但是筛选后怎么绑定到GridView控件里?
还有,select * from...语句能否用于非数据库的查询?我刚接触web编程,很菜的,请大家帮忙,仔细点更好了
DataTable dt=dataset.tables[0];
DataView dv=new DataView(dt);
dv.RowFilter="字段1 ="+TextBox1.Text.Trim();
GridView.DataSource=dv;
GridView.DataBind();
当然你也可以考虑把数据放在ViewState,或者Cookie中,放在ViewState中不好的地方就是页面多了一大堆“乱七八糟”的东西,放在Cookie中得需要数据转换。都有一些缺点吧。
反正到目前为止,我自己还没有想到自己觉得非常满意的办法,我现在一般都用ViewState或者页面的隐藏表单域或者Coolie。
DataView dv=new DataView(dt);
dv.RowFilter="";
GridView.DataSource=dv;
GridView.DataBind();
通过缓存保存dt或使用ViewState保存,还有缓存依赖
if(Cache["dt"]==null)
{
}
else
dt= (DataTable)Cache["dt"];