我要做一个查询页面,在search.aspx页面点击查询按钮,searchdetail.aspx页面显示前一页满足多个关键字或者其中几个关键字条件的查询结果。
用SESSION()来做.  
  第一个页面  button_click 事件: 
         protected void Button1_Click(object sender, EventArgs e)
           {
        Session["jbqk_ghid"]=  this.ghid.Text.Trim();
        Session["jbqk_ghmc"] = this.ghmc.Text.Trim();
        Session["jbqk_szdq"] = this.szdq.Text.Trim();
        Session["jbqk_dwlb"] = this.dwlb.Text.Trim();
        Session["jbqk_zzlb"] = this.zzlb.Text.Trim();
        Response.Redirect("searchdetail.aspx");
 第二个页面  用SqlDataSource  和 GridView来实现。
          SqlDataSource 用 session来配置
         SELECT * FROM [jbqk] WHERE (([jbqk_id] = @jbqk_id) or ([jbqk_ghmc] = @jbqk_ghmc) or ([jbqk_szdq] =    @jbqk_szdq) or    ([jbqk_dwlb] = @jbqk_dwlb) or ([jbqk_zzlb] = @jbqk_zzlb))
         GridView绑定SqlDataSource。但是GridView老是提示没有数据。

解决方案 »

  1.   

    <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:你的联接字符%>"
                SelectCommand="SELECT   *   FROM   [jbqk]   WHERE   (([jbqk_id]   =   @jbqk_id)   or   ([jbqk_ghmc]   =   @jbqk_ghmc)   or   ([jbqk_szdq]   =         @jbqk_szdq)   or         ([jbqk_dwlb]   =   @jbqk_dwlb)   or   ([jbqk_zzlb]   =   @jbqk_zzlb)) &#13;&#10;">
                <SelectParameters>
                    <asp:SessionParameter Name="jbqk_id" SessionField="jbqk_ghid" />
                    <asp:SessionParameter Name="jbqk_ghmc" SessionField="jbqk_ghmc" />
                    <asp:SessionParameter Name="jbqk_szdq" SessionField="jbqk_szdq" />
                    <asp:SessionParameter Name="jbqk_dwlb" SessionField="jbqk_dwlb" />
                    <asp:SessionParameter Name="jbqk_zzlb" SessionField="jbqk_zzlb" />
                </SelectParameters>
            </asp:SqlDataSource>
      

  2.   

    jianzi1943 这些代码VS2005会自动生成的。 谢谢你的回复
      

  3.   

     估计是这个语句有问题:SELECT   *   FROM   [jbqk]   WHERE   (([jbqk_id]=@jbqk_id) or([jbqk_ghmc] = @jbqk_ghmc) or ([jbqk_szdq] = @jbqk_szdq) or ([jbqk_dwlb]  =  @jbqk_dwlb) or ([jbqk_zzlb]   =   @jbqk_zzlb)) 
        现在我要把两个字段改成LIKE 不是“=”。
        ([jbqk_ghmc] = @jbqk_ghmc)=====》([jbqk_ghmc]  like '%jbqk_ghmc%')
        ([jbqk_szdq] = @jbqk_szdq)=====》([jbqk_szdq]  like '%jbqk_szdq%')
      这样改了之后,在查询生成器里面就没有了这两个字段,请问,LIKE 加通配符在这里该如何表示???
      

  4.   

    select 这句话问题已经解决了,在查询生成器里,已经可以运行。
      但是searchdetail.aspx页面依据取不到数据? 谁能帮帮我