获取网页加载asp的价值?

时间:2018-09-18 01:29:59

标签: c# asp.net

protected void Page_Load(object sender, EventArgs e)
        {
             string guest= Session["consumer"].ToString() ; 

            }
          }


protected void user_SelectedIndexChanged(object sender, EventArgs e)
    {

      user.text = guest;
    }

如何从页面加载到user.text的访客中获得价值。 -(sr我的英语不好)

1 个答案:

答案 0 :(得分:1)

您有一些选择。首先,只需再次检查相同的Session值:

protected void user_SelectedIndexChanged(object sender, EventArgs e)
{
  user.text = Session["consumer"].ToString();
}

第二,使用类成员:

private string guest;
protected void Page_Load(object sender, EventArgs e)
{
    guest = Session["consumer"].ToString(); 
}

protected void user_SelectedIndexChanged(object sender, EventArgs e)
{
     user.text = guest;
}

在这里要非常小心,仅在相同的生命周期内使用它。 guest成员值将不会在回发后继续存在。

另一种选择是使用属性。

private string guest {get; set;}
protected void Page_Load(object sender, EventArgs e)
{
    guest = Session["consumer"].ToString(); 
}

protected void user_SelectedIndexChanged(object sender, EventArgs e)
{
     user.text = guest;
}

似乎与上一个选项几乎相同,但是我喜欢它,因为如果需要,您可以更改属性以直接与Session或ViewState交互:

private string guest 
{
    get {return Session["consumer"].ToString();}
    set {Session["consume"] = value;}
}

protected void user_SelectedIndexChanged(object sender, EventArgs e)
{
     user.text = guest;
}