当前位置:编程学习 > C#/ASP.NET >>

SqlDataSource查询如何增加另一页面发回的id号,从而过滤一些数据

页面A传送参数到页面B。

页面A传送的参数(参数T_ID是Task.T_ID的值):
NavigateUrl='<%#"Show_view.aspx?T_ID=" + DataBinder.Eval(Container.DataItem,"T_ID").ToString() %>'>

发送到页面B:
页面B有个gridview1,使用SqlDataSource数据源,

gridview1的查询语句如下
(说明:有三张表:Task,S_User,S_Answer,)
SELECT   Task.T_ID, S_Answer.A_ID, Task.T_S_ID, S_Answer.A_T_ID, S_Answer.A_Submit, S_Answer.A_S_ID, S_User.S_Name, 
                S_User.S_ID
FROM      S_Answer INNER JOIN
                Task ON S_Answer.A_T_ID = Task.T_ID CROSS JOIN
                S_User
符合条件的都已经查询出来了,如何根据这个A页面传回的参数T_ID(Task.T_ID)再进行进一步的过滤?
谢谢!

因为以上查出来的是:只要S_Answer.A_T_ID = Task.T_ID,就都显示出来,
如:
(S_Answer.A_T_ID) 1=1 (Task.T_ID)
(S_Answer.A_T_ID) 2=2 (Task.T_ID)
(S_Answer.A_T_ID) 3=3 (Task.T_ID)
假如:Show_view.aspx?T_ID=1" 
如何只查出(S_Answer.A_T_ID) 1=1 (Task.T_ID)的符合条件的数据。 --------------------编程问答-------------------- SELECT   Task.T_ID, S_Answer.A_ID, Task.T_S_ID, S_Answer.A_T_ID, S_Answer.A_Submit, S_Answer.A_S_ID, S_User.S_Name, 
                S_User.S_ID
FROM      S_Answer INNER JOIN
                Task ON S_Answer.A_T_ID = Task.T_ID CROSS JOIN
                S_User and T_ID=1;
加上这个就可以了吧,如果我没理解错 --------------------编程问答-------------------- 可是,T_ID是A页面传的参数,T_ID的值是随时变化的,然后gridview1的值也会根据T_ID的值的改变而改变~ --------------------编程问答-------------------- https://www.google.com.hk/search?q=asp.net+querystringparameter&newwindow=1&safe=strict&espv=210&es_sm=93&lr=lang_zh-CN&sa=X&ei=5aeIUtPIJ6XZigfR6oDYAg&ved=0CCkQuAE&biw=1528&bih=801 --------------------编程问答-------------------- 如果你要一个稍微好一点的用户体验,就不要简单地使用asp.net。你可以使用javascript并且以弹出窗口(或者弹出模态窗口)的方式来访问,然后弹出窗口可以以 Opener.function(....)  的形式调用父窗口的自定义函数来传送参数,或者其它的方式取得返回值。参考这里:http://www.w3school.com.cn/htmldom/dom_obj_window.asp
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,