• 1
  • 2
  • 3
  • 4
  • 5
asp.net空间 首 页  »  帮助中心  »  虚拟主机  »  asp.net空间
重新定向ASP.NET中提供的页面
发布日期:2015-10-9 17:10:37

  重新定向ASP.NET中提供的页面

  我们平时看到的网站中肯定是由多个页面构成,每个页面相互独立又有着紧密的联系。而页面间的关系起着支撑着网站的层次关系的关键作用。为了让页面更好的工作就要考虑到一个页面重新定向的问题。本文介绍了微软提供的ASP.NET中提供了如下3种常用的页面重定向方式:

  1. 使用超链接重定向

  重新定向页面的最常见的方法就是使用超链接作为用户提供跳转到目标页的“接口”。有两种方法可以实现页面重定向:在 ASP.NET 网页上使用HTML标记创建静态链接,或者也可以通过使用 HyperLink 服务器控件以编程方式控制超链接的链接文本和目标 URL。这两种方法的优在于可以将页面重定向到任何页,而不局限于同一Web应用程序当中。但是不会将当前页的信息传递到目标页,如果需要跨页传递(共享)信息,通常需要使用查询字符串或会话状态。

  2. 使用浏览器以编程方式重定向

  利用浏览器以编程方式重定向可以通过调用 Redirect 方法为页面设置重定向URL。

  具体操作是Redirect方法接受一个表示目标位置的字符串。当服务器遇到Redirect语句时,将发送一条指令(包含新的地址)给浏览器,然后让浏览器去发送http请求。与超链接一样,Redirect 方法不会向目标页传递信息。如果源页和目标页位于同一Web应用程序中,则可以通过将数据存储在会话状态中在源页和目标页之间共享数据。

  3. 在服务器端以编程方式重定向

  上述讲到的Redirect是通过浏览器进行重定向的,而在服务器上直接重定向到目标页的方法是Transfer 方法。与Redirect方法相比,Transfer方法有一个明显的优点就是Transfer方法少了一个由服务器传输数据到浏览器的过程,而直接由服务器端转向目标页。Transfer方法的另一个显著特点就是在页面转换时,Request集合里的内容不会丢失,从而为开发人员带来了方便。 由于源页和目标页之间的传输在服务器上进行,浏览器没有任何关于更改后的页的信息,它仍保留有关原始(源)URL 的信息。例如,Internet Explorer 中的“地址”框在执行传输后不会发生变化,而是继续显示最近请求的页(通常为源页)的 URL。因此,对于以隐藏 URL 的方式向用户呈现页面的应用程序而言,调用 Transfer 方法是一种最佳的策略。注意:采用Transfer方式重定向,源页与目标页必须位于相同的 Web 应用程序中,否则会引发异常。