手机版

asp.net页面转向回应 重定向,服务器 传输,服务器 执行的区别

时间:2021-10-25 来源:互联网 编辑:宝哥软件园 浏览:

回应。重定向只是向浏览器发送一条消息,告诉浏览器定位另一个页面。您可以使用以下代码将用户引导到另一个页面:response . redirect(' webform 2 . aspx ')或response . redirect(' http://www . cnnas.com/')server . transfer还通过语句将用户引导到另一个页面,例如:Server。传输(' WebForm2.aspx ')。然而,这种说法有一系列独特的优点和缺点。首先,通过服务器引导到另一个页面。转移预留服务器资源,将“焦点”转移到服务器端,传输请求,而不是告诉浏览器重定向,这意味着你不会占用更多的HTTP请求,这样可以减轻服务器的压力,让你的服务器运行得更快。但是,请注意“传输”只能在同一服务器上的相同站点之间运行,因此您不能使用服务器。转移以将用户重定向到另一台服务器上的站点。只有回应。重定向可以重定向到服务器以外的站点。第二,服务器。传输保留浏览器的网址。这有助于简化数据输入,但也增加了调试的复杂性。还有:服务器。传输方法有另一个参数——“preserve form”。如果将此参数设置为真,例如:服务器。传输(' webform2。aspx ',true),则查询字符串和任何表单变量将同时传递到您要定位的页面。示例:WebForm1.aspx有一个名为TextBox1的文本框。如果将它传递给WebForm2.aspx,并将preserveForm设置为True,则仍然可以使用Request。获取文本框值的形式(“文本框1”)。这项技术对于向导式的多页输入非常有用,但是这里有一个问题必须注意。当您使用preserveForm参数时,ASP.NET有一个错误。通常,当您尝试传递表单或查询字符串值时,会发生错误。参见:http://support.microsoft.com/default.aspx? id=kb;en-us;问题316920非官方的解决方案是在您想要传递的目标页面中将enableViewStateMac属性设置为True,然后将其设置回False。这表明您需要使用enableViewStateMac的False值来解决这个问题。总结:回应。重定向只是告诉浏览器访问另一个页面。服务器。Transfer有助于减少服务器请求,保持地址栏的URL不变,并允许您将查询字符串和表单变量传输到另一个页面(有一个小缺陷)。重要提示:不要混淆服务器。与服务器传输。执行。服务器。Execute执行页面并返回结果。在过去,服务器。Execute非常有用,但是在ASP.NET,它被更新的方法所取代,所以服务器。执行被忽略。使用HttpContext。重写路径与Server.Transfer/Execute.合作我想很多人都知道如何使用HttpContext。重写路径以在applen _ Start等事件中更改HttpHandler。如果在调用Server.Transfer/Execute,之前使用重写路径,可以起到指定查询字符串的效果。例如context .重写路径(' aa.aspx ','',' ok=3333 ');语境。服务器。传输('测试2。aspx’);这样,Test2。可以执行Aspx,QueryString为OKOK=3333。这一点特别有用。目前我用这个方法来避免使用Response。再直接的.服务器的区别。转移和响应。重定向服务器。传输(ASP 3.0以上)和响应。重定向以前存在于ASP和Page中。导航是ASP.NET beta 1提供的新功能。两者的区别如下:1 .服务器。转移-用于将处理控制从一个页面转移到另一个页面。在传输过程中,它不离开服务器,并保存内部控制的信息(如请求、会话等。)保持不变。因此,您可以从页面A跳转到页面B,而不会丢失用户在页面A中收集的提交信息。此外,在传输过程中,浏览器的网址栏不会改变。2.回应。重定向-向客户端发送一个HTTP响应,告诉客户端跳转到一个新页面,然后客户端向服务器发送跳转请求。

使用这种方式时,内部控制数据不会全部保存,A页跳转到B页,B页无法访问A页表单提交的数据.3.页面的功能。导航-页面。导航类似于Response.Redirect,它实际上包括三个步骤:首先调用response.redirect,然后依次卸载所有控件,最后调用Response。特别是在。NET Beta 2,微软将不再包含Page的功能。导航,每个人都应该取代页面。通过响应导航。立即重定向以节省未来升级的时间。(1)服务器。传输方法:服务器。transfer(' m2 . aspx ');//翻页(在服务器上执行)。服务器停止解析此页面,在翻页前保存数据,然后将页面翻到m2.aspx,并将翻页前的数据和m2.aspx页面的结果返回给浏览器。

(2)服务器。执行方法:服务器。执行(' m2 . aspx ');服务器保存该页翻页前的数据后,将该页翻到m2.aspx执行,然后返回该页继续执行。然后合并三者的结果,并将其返回到浏览器。以上都是服务器端翻页,所以浏览器没有换页记录(显示的地址不会变)。因此,如果用户刷新此页面,可能会出现一些其他意外情况。这样的翻页可以完成一些其他的功能,比如访问上一页的服务器控件。(9501.163.com

(3)回应。Redirect:当浏览器请求一个aspx页面时,会遇到Redirect(url)方法,相当于告诉浏览器需要先访问某个页面,所以浏览器会向服务器发送这个页面的请求。重新定位由浏览器执行,服务器和浏览器之间会有额外的往返行程。当网络条件不是很好时,两次请求会大大降低应用的响应速度,甚至占用冗余带宽。

总结:网络状态好的时候,Redirect(url)方法的效率最高!服务器。传输方法和服务器。执行方法最灵活!服务器。Execute方法占用的资源最多。

版权声明:asp.net页面转向回应 重定向,服务器 传输,服务器 执行的区别是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。