欢迎您来到中国万网客户服务中心!
客服导航
如果您在使用我们的产品中遇到问题,建议您首先在“常见问题”中查询解决方法;
如果没有找到该问题的解决方法,您可以在“问题搜索”中进行搜索;
如果搜索后没有找到满意答案,您可以“在线提问”,我们会在1个工作日内给您答复。
您现在的位置: 中国万网客服中心 >> 常见问题 >> 软件常见问题 >> ASP.NET程序模板 >> 文章正文

ASP.NET中提供的页面重定向实现方式

作者:客服中心    文章来源:本站原创    点击数:    更新时间:2008-7-3

网站中肯定有多个页面构成,页面间的关系支撑着网站的层次关系。这就考虑到一个页面重新定向的问题,微软提供的ASP.NET中提供了如下3种常用的页面重定向方式:

1. 超链接
最常见的方法是使用超链接作为用户提供跳转到目标页的“接口”。可以在 ASP.NET 网页上使用HTML<a>标记创建静态链接,也可以通过使用 HyperLink 服务器控件以编程方式控制超链接的链接文本和目标 URL,如下面的代码所示。

代码实例:
<a href="http://www.net.cn" target="_blank">中国万网</a>
<asp:HyperLink
ID="HyperLink1"
runat="server"
NavigateUrl="http://www.net.cn">
我的网站
</asp:HyperLink>
这两种方法的特点在于可以将页面重定向到任何页,而不局限于同一Web应用程序当中。但是不会将当前页的信息传递到目标页,如果需要跨页传递(共享)信息,通常需要使用查询字符串或会话状态。

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

代码实例:
protected void Button1_Click(object sender, EventArgs e)
{
Response.Redirect("~/Test.aspx");
}
Redirect方法接受一个表示目标位置的字符串。当服务器遇到Redirect语句时,将发送一条指令(包含新的地址)给浏览器,然后让浏览器去发送http请求。与超链接一样,Redirect 方法不会向目标页传递信息。如果源页和目标页位于同一Web应用程序中,则可以通过将数据存储在会话状态中在源页和目标页之间共享数据。

3. 在服务器端以编程方式重定向
Redirect是通过浏览器进行重定向的,而Transfer 方法则是在服务器上直接重定向到目标页。也就是说,比起Redirect方法,Transfer少了一个由服务器传输数据到浏览器的过程,而直接由服务器端转向目标页。Transfer方法的另一个显著特点就是在页面转换时,Request集合里的内容不会丢失,从而为开发人员带来了方便。

代码实例:
protected void Button1_Click(object sender, EventArgs e)
{
Server.Transfer("~/Test.aspx");
} 由于源页和目标页之间的传输在服务器上进行,浏览器没有任何关于更改后的页的信息,它仍保留有关原始(源)URL 的信息。例如,Internet Explorer 中的“地址”框在执行传输后不会发生变化,而是继续显示最近请求的页(通常为源页)的 URL。因此,对于以隐藏 URL 的方式向用户呈现页面的应用程序而言,调用 Transfer 方法是一种最佳的策略。注意:采用Transfer方式重定向,源页与目标页必须位于相同的 Web 应用程序中,否则会引发异常。


返回上一页
中国万网旗下网站:中国万网 买麦网
Copyright © 2007 中国万网 版权所有
推荐使用1024×768分辨率浏览,并关闭窗口弹出阻止程序