Asp.net 使用导航url时如何传递会话对象

Asp.net 使用导航url时如何传递会话对象,asp.net,Asp.net,我使用的是hyperlink navigateurl,它会打开一个弹出窗口(这是一个aspx页面),该弹出窗口根据会话对象的数据加载。如何在navigateurl中传递会话对象。谁能给我提个建议吗 您首先需要了解的是navigateUrl不会导致回发。用户单击链接后,无法使用服务器端代码进行控制。 我认为我们能做到这一点的唯一方法是在运行时构造url,将会话值与url连接为QueryString。看看这个例子:假设您有一个id为=“HyperLink1”的控件。您可以将其放置在页面加载事件中 H

我使用的是hyperlink navigateurl,它会打开一个弹出窗口(这是一个aspx页面),该弹出窗口根据会话对象的数据加载。如何在navigateurl中传递会话对象。谁能给我提个建议吗

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

HyperLink1.NavigateUrl = "~/popup.aspx?val=" + Session["ur_value"];
然后在popup.aspx页面中,从页面加载事件中的url提取查询字符串

string xx=Request.QueryString("val");//if the value was string
但是,为什么要用navigateUrl传递会话值呢?
您可以使用会话对象直接访问弹出的aspx页面中的会话值。

您好,非常感谢您提供的详细答案和建议。我正在开发一个已经开发的页面,这个页面也在其他一些表单中使用。我想使用同一个页面,但不想看到该页面上几乎没有其他控件。我还不明白你的意思。也许你可以解释得更多,这样其他人也可以告诉我们该怎么做。非常感谢。