如何在使用导航URL时传递会话对象

时间:2011-12-13 15:44:01

标签: asp.net

我正在使用超链接导航,它打开一个弹出窗口(这是一个aspx页面),这个弹出窗口根据会话对象的数据加载。如何在navigateurl中传递会话对象。任何人都可以告诉我。

1 个答案:

答案 0 :(得分:0)

首先想到你需要了解的是,navigateUrl不会导致回发。用户单击链接后,您无法使用服务器端代码进行控制。  我认为我们能够做到这一点的唯一方法是在运行时构造url,并将会话值与url连接为QueryString。看看这个例子:假设你有一个id =“HyperLink1”的控件。您可以将其放在Page_Load事件

HyperLink1.NavigateUrl = "~/popup.aspx?val=" + Session["ur_value"];

然后在popup.aspx页面中从Page_Load事件中的url中提取QueryString

string xx=Request.QueryString("val");//if the value was string

但是你为什么要用navigateUrl传递会话值呢? 您可以使用会话对象直接访问弹出式aspx页面中的会话值。