【ASP.NET】三种页面转向——Server.Transfer,Server.Execute,Response.Redirect

Server.Transfer

Server.Transfer的重定向完全在服务器端进行,浏览器根本不知道。它先请求原始页面(a.aspx),原始页面(a.aspx)转到另一个页面(b.aspx),得到重定向后的页面
这里写图片描述

Server.Execute

Server.Execute的重定向发生在服务器端。它是请求原始页面(a.aspx),原始页面(a.aspx)执行统一Web服务器上指定的另一个新页面(b.aspx),当新页面(b.aspx)执行完毕,返回原始页面(a.aspx),得到重定向后的页面
这里写图片描述

Response.Redirect

Response.Redirect的重定向操作发生在客户端,共设计到两次与服务器的通信(两个来回),第一次是对原始页面(a.aspx)的请求,得到一个应答;第二次是对应答中的新页面(b.aspx)的请求,得到重定向后的页面
这里写图片描述

总结

Server.Transfer和Server.Execute方法最灵活,但只能转向同一个Application目录下
Server.Execute方法占用资源最多
Response.Redirect方法效率最高,可重定向到同一台或非同一台服务器上的aspx或非aspx资源

猜你喜欢

转载自blog.csdn.net/cxh6863/article/details/81461244