日期:2014-05-19  浏览次数:20569 次

一个简单但很郁闷的问题(菜鸟问题)
各位老师
      我的目的是从网页A.aspx   中的一个按钮在被CLICK后跳转到B.aspx,在跳转过程中A.aspx携带一个查询字符串
给B.aspx,当B.aspx接到查询字符串参数后进行查询。

      我的代码A.aspx.cs中参数传递代码是
                MySql= "Select   *   From   表1   where   表1.姓名= '秦王 ' ";
                Application[ "BH_T "]=MySql;
                Server.Transfer( "B.aspx ");//传递并调转页面

                  B.aspx.cs中接收是:
     
                  String   MyLocate;
       
                  void   Page_Load(object   o,   EventArgs   e)
                            {
                                MyLocate   =   (string)Application[ "BH_T "];      
                                this.TextBox1.Text   =   MyLocate;                      
                            }

                B.aspx中的数据库查询

                <form   id= "Form2 "   runat= "server ">

                <asp:SqlDataSource   ID= "SqlDataSource1 "   runat= "server "   ConnectionString= " <%$   ConnectionStrings:scadaConnectionString   %>
                    "   SelectCommand=MyLocate>                      
                </asp:SqlDataSource>

    但执行就出错,这个MyLocate的字符串内容我是收到了,因为   this.TextBox1.Text   =   MyLocate;中的TextBox1的内容正常显示了我传递的字符串内容,
    我不明白当B.aspx.cs在Page_Load中接收到MyLocate后是否就会给B.aspx   ,我想如果给了,   SelectCommand=MyLocate就应该
    没问题,但为什么出错,竟然提示没有MyLocate这个存储过程,晕,到底该如何书写B.aspx的SelectCommand


    还有一个问题是在B.aspx在显示过程中顶部自动把我传递的内容显示出来了 "Select   *   From   表1   where   表1.姓名= '秦王 ' "
    我如何不让它显示


------解决方案--------------------
SelectCommand=MyLocate

-->

SelectCommand= <%= MyLocate%>

或在后台给SelectCommand赋值
------解决方案--------------------
加上这个试试
SelectCommandType= "Text "
想问问,你写多长时间代码了?
------解决方案--------------------
up!
------解决方案--------------------
用session,用application恐怕有问题