我有两个ASP.NET网页(Page1.aspx和Page2.aspx),Page1.aspx包含几个TextBox控件和一个Button Control。
单击按钮控件的事件我使用 Response.Redirect 方法将用户重定向到Page2.aspx。
如何从目标页面(Page2.aspx)访问源页面数据(Page1.aspx中的TextBox值)。
我不想使用跨页面回发或Server.Transfer方法
谢谢。
答案 0 :(得分:2)
您需要在某处保留该数据。 Response.Redirect
的工作方式是告诉客户端(Web浏览器)对指定资源发出新请求。这实际上意味着旧资源被放弃了。将客户端提出的每个请求视为唯一且独立的。
保持值的简便方法是在调用Page1
之前将Session state存储在Response.Redirect
上。然后,在Page2
中,您可以从会话状态中检索这些值。
类似的东西:
<强>第1页强>
//...
Session["SomeValue"] = TextBox1.Text;
Session["SomeOtherValue"] = DropDownList1.SelectedIndex;
//...
Response.Redirect("Page2.aspx");
<强>第2页强>
//...
// Note: The following can have some additional type checking and input/value checking added
var someValue = Session["SomeValue"];
var someOtherValue = Session["SomeOtherValue"];
//...
答案 1 :(得分:1)
尝试使用会话变量
第1页
Session["field1"] = textbox1.Text;
第2页
string page1text = Session["field1"];