새 값으로 업데이트하지 않는 세션 변수가 있습니다. 두 페이지가 있습니다. 하나는 값을 입력하고 버튼에 klick을 입력하면 페이지 2로 리디렉션됩니다. 입력 한 내용을 확인할 수 있습니다. 잘못 입력 한 경우 다시 버튼을 클릭하면 첫 페이지로 돌아갑니다. 입력을 변경할 수 있지만 이제 버튼을 클릭하여 새 값이 세션 변수에 표시되지 않고 이전 값만 표시되는지 다시 확인합니다. 내가 마지막 날에 대한 세션을 readingabout되었지만 난 그냥 캔트 문제를 발견, 뒤에서 코드는 다음과 같습니다 :세션 변수가 이전 값을 가지고 있으며 페이지 리디렉션으로 업데이트해야합니다.
페이지 1
protected void Page_Load(object sender, EventArgs e)
{
if (this.Session["value1"] != null)
{
lbl1.Text = (String)this.Session["value1"].ToString();
}
}
public string info { get { return lbl1.Text; } }
protected void inputButton_onclick(object sender, EventArgs e)
{
Page.Validate();
if (Page.IsValid)
{
Session["value1"] = info;
Response.Redirect("~/validpage.aspx");
}
}
에게 어쩌면 내가 내 자신을 staired 한 페이지 2
protected void Page_Load(object sender, EventArgs e)
{
if (Session["value1"] != null)
{
lbl2.Text = (String)Session["value1"].ToString();
}
}
protected void BackButton_Click(object sender, EventArgs e)
{
Session["value1"] = lbl2.Text;
Response.Redirect("~/Default.aspx");
}
나에게이 코드를 보지 못하면이 문제가 나타나서는 안된다. 어떤 아이디어와 도움을 주시면 감사하겠습니다.
왜 'BackButton_Click'에서 세션 값을 설정하나요? –
첫 번째 화면에서 foo를 입력 한 경우'inputButton'을 클릭하면 2 페이지의 lbl2에 foo가 표시되지만 2 페이지에 bar를 입력하고 'BackButton'을 클릭하면 foo가 1 페이지에 계속 표시됩니까? –
Page 1이'lbl1'은 레이블 또는 텍스트 상자이며 세션 값을 어디에서 변경합니까? –