我正在尝试将第一个.aspx页面中的Label.Text会话转到第二个.aspx页面中的另一个Label。我从数据库中检索我的值并将它们放在第一个Label.Text中,并希望将此标签(我从数据库中获取文本)转发到链接到第一页的另一个页面。我使用这种方法是因为我有一个详细的产品页面(我的第一个.aspx页面),它包含许多产品,当用户点击某个特定产品时,它的产品名称必须显示在.aspx的第二页中。我的问题是,当我在第一页上的Label文本上进行Session时,该值不会传递给另一个页面。
我的第一页的.cs代码(代码隐藏):
Session["productName"] = productName.Text;
Response.Redirect("products2.aspx");
我的第二页的.cs代码(代码背后 - 我将此代码放在页面加载中)
if (Session["productName"] != null)
productName.Text = Session["productName"].ToString();
我在哪里出错了?
答案 0 :(得分:0)
为了使会话长时间不过期,您应该遵循两个步骤。
Keep a continous eye on the Session Timeout.
Redirect the session when its about to expire.
检测会话的基页将向您解释您需要做的每件事,请参考一次。
答案 1 :(得分:0)
你的代码完全正确.. 但我的问题是你在页面加载中使用ispostback吗?
如果没有那么就像这样使用它...因为回发有时候你无法获得价值。 然后把你的代码如果不回发
page_load()
{
if(ispostback)
{
}
else
{
//put your code here
}
}