当进入A页面的时候,获取到session值做数据库判断,第一次进入属于正常但是一刷新,session值就没了?请问这该如何解决?一刷新,我文本框的值等等,就都没有了请大家讨论下给个最好的解决办法谢谢各位大哥,
-------------------------------Page_Load
 if (!IsPostBack)
            {
                if ((Session["ExtendParameter"] != null && Session["ExtendParameter"].ToString() != string.Empty && Session["ExtendParameter"].ToString() != "0"))
                {
                    string sid = Session["ExtendParameter"].ToString();                    string strSQL = "select * from SI_INFO where SI_ID='" + sid + "'";
                    DataTable dt = new DataTable();
                    DBHelper.FillDataTable(strSQL, dt);
                    if (dt.Rows.Count == 1)
                    {
                        this.ctr_Id.Value = dt.Rows[0]["SI_ID"].ToString();                        this.ctr_CusNo.Value = dt.Rows[0]["ACCOUNTNUM"].ToString();
                        this.ctr_Name.Value = dt.Rows[0]["NAME"].ToString();
                        this.ctr_Mobile.Value = dt.Rows[0]["PHONE"].ToString();
                    }
                    else
                    {
                    }
                }
            }

解决方案 »

  1.   

    Session["ExtendParameter"] 在哪儿赋值的。Window服务中将ASP.NET State Service启动
      

  2.   


                if (!IsPostBack)
                {
                    if (Session["ExtendParameter"] != null 
                        && string.IsNullOrEmpty(Session["ExtendParameter"].ToString()))
                    {
                        string sid = Session["ExtendParameter"].ToString();                    string strSQL = string.Format("select * from SI_INFO where SI_ID='{0}'", sid);
                        DataTable dt = new DataTable();
                        DBHelper.FillDataTable(strSQL, dt);
                        if (dt.Rows.Count == 1)
                        {
                            this.ctr_Id.Value = dt.Rows[0]["SI_ID"].ToString();
                            this.ctr_CusNo.Value = dt.Rows[0]["ACCOUNTNUM"].ToString();
                            this.ctr_Name.Value = dt.Rows[0]["NAME"].ToString();
                            this.ctr_Mobile.Value = dt.Rows[0]["PHONE"].ToString();
                        }
                    }
                }
      

  3.   

    Session["ExtendParameter"] 是我url传递过来的
    每次刷新页面。这个session就没了。我在IsPostBack最后 把Session["ExtendParameter"]重新赋值给自己 好像也不行。
      

  4.   

    大哥,这句话string.IsNullOrEmpty(Session["ExtendParameter"].ToString())返回false,
    不走下面的代码了
      

  5.   

    !string.IsNullOrEmpty(Session["ExtendParameter"].ToString()) 第一次是进入的,刷新后就没了。
    Window服务中将ASP.NET State Service启动了,但是没什么效果