A.aspx.cs中
{
ViewState["name"] = "asdf";
}B.aspx.cs中
{
string s = ViewState["name"];
}但是此时ViewState["name"]为null,
请问为什么没有值没有保留?怎么才能取到值?

解决方案 »

  1.   

    ViewState是当前页面内的对象,当然取不到值
      

  2.   

    这么说ViewState是不能跨页面取值了?那么怎么样才能比较好的将当前页面的一个值传给它的间接关联页面?
      

  3.   

    Session["name"] = "asdf";
    string s = Session["name"];
      

  4.   

    可以用Session,不过最好用传递参数
      

  5.   

    Session 不是有丢失问题吗?
    如果用session的话怎么样才能保证长时间不丢失呢?
      

  6.   

    我的情况是A页面可以打开B页面,B页面可以打开C页面,而C页面要用A页面的一个值,如果用传递参数感觉很别扭
      

  7.   

    如果服务器压力不大,session一般情况下不会丢失,如果担心session/cache丢失的话
    可以让a.aspx交给cookie放在客户端,在b.aspx中再取回来
      

  8.   

    这个问题不可能解决,ViewState是不能跨页的,只能通过Cookie和Session转一下,要是谁能解决不通过Cookie和Session实现,我出500分外加人民币100元。