【发布时间】:2011-12-14 02:31:58
【问题描述】:
我正在使用超链接 navigateurl ,它会打开一个弹出窗口(这是一个 aspx 页面),此弹出窗口根据来自会话对象的数据加载。如何在导航 URL 中传递会话对象。任何人都可以给我建议。
【问题讨论】:
标签: asp.net
我正在使用超链接 navigateurl ,它会打开一个弹出窗口(这是一个 aspx 页面),此弹出窗口根据来自会话对象的数据加载。如何在导航 URL 中传递会话对象。任何人都可以给我建议。
【问题讨论】:
标签: asp.net
首先需要了解的是navigationUrl 不会导致回发。用户单击链接后,您无法使用服务器端代码进行控制。 我认为我们可以做到这一点的唯一方法是在运行时构造 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 页面中的会话值。
【讨论】: