首先这是搜索页面的cs代码 
    protected void Button1_Click(object sender, EventArgs e)
        {
           string str = TextBox1.Text.Trim();
            Response.Redirect("~/User/ShowSame.aspx?str="+str+"");
        }
这个是显示页面的cs代码
        protected void Page_Load(object sender, EventArgs e)
        {          string str1 = Request.QueryString["str"].ToString();
         if (!IsPostBack)
         {
             this.dtlsame.DataSource = SqlCom.getDataByCondition("ProDetail", "*", " where ProDetailName like '%" + str1 + "%'");
             this.dtlsame.DataBind();     
         }
这是显示页面aspx代码
<asp:DataList ID="dtlsame" runat="server" >
<ItemTemplate>
<img src='<%#Eval("ProImage")%>' alt="" />
</ItemTemplate>
</asp:DataList>大侠们帮帮忙,我在数据库中取数据的时候,DataList显示有问题,有些数据能全部显示,有些显示不出来,有些又只能显示部分,这是为嘛啊??补充一下,是在搜索页面搜索,然后根据搜索的关键字在数据库中查询,然后显示在DataList里面。可就是这里出了问题,取出的数据也成功取出来了,急急急啊.......DataList .net显示

解决方案 »

  1.   


    断点,看你的完整的SQL语句   
      

  2.   


    断点,看你的完整的SQL语句   sql语句没有问题,我用的存储过程,用这个测试
     DataTable dt=SqlCom.getDataByCondition("ProDetail", "*", " where ProDetailName like '%" + str1 + "%'");
                 this.dtlsame.DataSource = dt;
                 this.dtlsame.DataBind();
                 Response.Write(dt.Rows.Count);
    显示的Count条数都是正确的,可是就是在DataList里面就有问题!
      

  3.   

    str有中文没? 
    Response.Redirect("~/User/ShowSame.aspx?str="+Server.UrlEncode(str));
    转义一下参数看看
      

  4.   


    转义了还是不行,问题还是一样!那就有可能是页面缓存的原因了
    Response.Redirect("~/User/ShowSame.aspx?str="+Server.UrlEncode(str)+ "&no-cache="+ DateTime.Now.ToString("yyyyMMddHHmmss"));
      

  5.   


    转义了还是不行,问题还是一样!那就有可能是页面缓存的原因了
    Response.Redirect("~/User/ShowSame.aspx?str="+Server.UrlEncode(str)+ "&no-cache="+ DateTime.Now.ToString("yyyyMMddHHmmss"));
    试过了还是不行,而且一直都在删cookies
      

  6.   

    <img src='<%#Eval("ProImage")%>?no-cache=<%# DateTime.Now.ToString("yyyyMMddHHmmss") %>' alt="" />
    图片数量对吗?