protected void Page_Load(object sender, EventArgs args)
        {
            if (Request.QueryString.Count == 0)
            {
                SqlDataSource1.SelectCommand = "SELECT * FROM [tb_customer]";                
            }
            
        }
代码是执行到这了,为啥前台的GRIDVEIW没有变化呢?

解决方案 »

  1.   

    或者这样,前台的sqldatasource里面不要写selectcommandprotected void Page_Load(object sender, EventArgs args)
    {
        if (Request.QueryString.Count == 0)
        {
            SqlDataSource1.SelectCommand = "SELECT * FROM [tb_customer]";
        }
        else
        {
            SqlDataSource1.SelectCommand = "SELECT * FROM [tb_customer] WHERE xxxxxxxxxxxxx";
        }
    }
      

  2.   

    正解,还有一点小问题,where id=@id,ID是Request.QueryString["a"].ToString()的值,在前台设置了参数后 上面句代码不生效,在后台设置SqlDataSource1.SelectParameters.Add("@ID", Request.QueryString["a"].ToString());没用,直接报错,没声明变量标量
      

  3.   

    SqlDataSource1.SelectParameters.Add("@ID", Request.QueryString["a"].ToString())这里的ID前面不需要@