ASP.NET(c#)实现重定向的三种方法的总结

(1)Server.Transfer方法:

Server.Transfer("m2.aspx");//页面转向(服务器上执行). 
服务器停止解析本页,保存此页转向前的数据后,再使页面转向到m2.aspx, 
并将转向前数据加上m2.aspx页结果返回给浏览器. 

(2)Server.Execute方法:

Server.Execute("m2.aspx"); 
服务器保存此页转向前的数据后,使页面转向到m2.aspx执行, 
再返回本页继续执行.再将三者结果合并后返回给浏览器.

以上都是服务器端页面转向所以浏览器不出现页更改记录(显示的地址不会改变). 
因此,如果用户刷新此页,也许会出现一些其它意外情况. 
此类页转向,可完成一些其它功能,比如访问到前一页面中的服务端控件.

(3)Response.Redirect:

当浏览器请求aspx页面时,碰到Redirect(url)方法, 
相当于告诉浏览器,你先需访问某页面,于是浏览器再向服务器发送一个到此页面的请求. 
重定位是通过浏览器执行的,在服务器和浏览器之间会产生额外的往返过程。

在网络状况不是很好的情况下,两次请求会大大的 
降低应用程序的反应速度,甚至占用多余的带宽. 

总结:

在网络状态较好的情况下,Redirect(url)方法效率最高!! 
Server.Transfer方法和Server.Execute方法最灵活!! 
Server.Execute方法占用资源最多.

 

转载自:http://blog.163.com/ecaol@126/blog/static/46846363200751494339385/

转载于:https://www.cnblogs.com/loushuibazi/p/4158071.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/420409.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端学习(1301):gulp建立任务csso和less

const gulp require(gulp); const htmlmin require(gulp-htmlmin); const fileinclude require(gulp-file-include); const less require(gulp-less); gulp.task(first, () > {console.log(第一次执行);});gulp.task(htmlmin, () > {gulp.src(./src/*.html)//压缩去其…

just for rest~

整理了一些可以放昵称的可爱符号!ᑋᵉᑊᑊᵒ ᵕ̈ ᑋᵉᑊᑊᵒഒ˙˙₍ᐢ..ᐢ₎˙Ⱉ˙(⌓) ִִ•ᴥ•ଲॱଳॱ————————————ꙫ˙Ꙫ˙・◡・꒦ິ^꒦ິ•́‸กᵕ᷄≀ ̠˘᷅- ̗̀(ᵔ⌔ᵔ)˙Ⱉ˙˃̶͈ ˂̶͈՞• •՞˙Ⱉ˙҉ง⍢⃝

前端学习(1302):实现es6的转化

const gulp require(gulp); const htmlmin require(gulp-htmlmin); const fileinclude require(gulp-file-include); const less require(gulp-less); const csso require(gulp-csso); const babel require(gulp-babel); gulp.task(first, () > {console.log(第一次执…

EF6 如何判断DataContext有修改,以及如何放弃修改

如何判断DataContext有修改: EF6的 using (var db new Model1()) {if (db.ChangeTracker.HasChanges()){Console.WriteLine("Something has changed");} } EF5中: public bool HasUnsavedChanges(){return this.ChangeTracker.Entries().Any(…

boot整合redis

redisTemplate封装pomredisTemplate配置类redis工具类封装pom <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency>redisTemplate配置类 覆盖默认的redis模板…

前端学习(1303):复制文件夹

const gulp require(gulp); const htmlmin require(gulp-htmlmin); const fileinclude require(gulp-file-include); const less require(gulp-less); const csso require(gulp-csso); const babel require(gulp-babel); gulp.task(first, () > {console.log(第一次执…

[另开新坑] 算导v3 #26 最大流 翻译

26 最大流 就像我们可以对一个路网构建一个有向图求最短路一样,我们也可以将一个有向图看成是一个"流量网络(flow network)",用它来回答关于流的问题. Just as we can model a road map as a directed graph in order to find the shortest path from one point to a…

springdata jpa单表操作crud

spring data jpa1. 项目搭建1.1 配置1.2 实体类1.3 继承JpaRepository接口2. 批量新增3. 查询4. 修改 by hql5. 删除 by hql1. 项目搭建 使用boot整合&#xff0c;导入springdata jap, mysql 驱动&#xff0c;lombok&#xff0c;web。 1.1 配置 # boot add jpa, oh~ crud in…

呀~ 一个.java的源文件可以写这么多类啊

1. 外部类 (写在pulic修饰的类外面) 2. 静态内部类(写在类的里面) 3. 局部内部类(写在方法里面) 4. 匿名内部类 5. 函数式接口。lambada表达式。public class LambdaDemo01 {/*** 2. 静态内部类*/static class Love02 implements Lover {Overridepublic void love() {System.ou…

js打开、关闭页面和运行代码那些事

<!doctype html> <html> <head> <meta charset"utf-8"> <meta name"author" content"智能社 - zhinengshe.com"> <meta name"copyright" content"智能社 - zhinengshe.com"> <title…

css定位:相对定位

关于相对定位的结论如下1. 使用相对定位的盒子&#xff0c;会相对于它原来的位置&#xff0c;通过偏移指定的距离&#xff0c;到达新的位置。2.使用相对定位的盒子仍在标准流中&#xff0c;它对父块和兄弟盒子没有任何影响。 <html><head><meta http-equiv”Con…

Vue warn: Invalid prop: type check failed for prop “data“. Expected Array, got Object.

需要数组&#xff0c;但是获取的是对象拉。 但是接口解析处理返回的是数组。 与下面的定义有关。我定义成了对象.png. 正解&#xff1a;

前端学习(1306):node.js模块的加载机制

demo10.js require(./find.js); find.js console.log(找到了); 运行结果

用nodejs 替换文件中所有图片的url

用nodejs 替换文件中所有图片的url 因业务需求&#xff0c;大量文件需要替换url到不同的环境。 所以用nodejs写了这个。本来想用python写&#xff0c;但是大部分同事只有nodejs环境。 主要的命令node rurl.js -new http://www.g.cn/ 替换原有.png .jpg图片图片路劲到 http://ww…

git bash上传大文件到github

git-lfs下载git lfs工具命令GitHub默认最高支持单次上传文件100MB git-lfs&#xff1a;git large file storage 下载git lfs工具 https://git-lfs.github.com/ 命令 在工作目录打开git bash。 # 1. 启用lfsgit lfs install# 2. 要上传的文件&#xff0c;这里指定目录下的…

Linux 命令快捷键

Linux 命令快捷键 tab 自动补齐(有不知道的吗)Ctrlu 删除(剪切)此处至开始所有内容 Ctrlk 删除从光标所在位置到行末 快速命令行 – 快捷方式• history 搜索历史执行过的命令• ctrll 清屏• Reset 刷新终端屏幕&#xff0c;尤其是终端出现字符不清晰或乱码时特管用 (和ctrl …