ASP.Net内置对象之网页之间传参(一)
Response对象
主要运用于数据从服务器发送到浏览器,可以输出数据、页面跳转、各个网页之间传参数等操作。
以下讲解几个常用例子:
在页面中输出数据
主要通过Write 、WriteFile方法输出数据。
Response.Write("hello");//在网页上显示hello
Response.WriteFile(@"F:\\hello.txt");//在网页上打开hello.txt并显示
Response.Write("<script>alert('hello')</script>");//弹出一个框显示hello
Response.Write("<script>alert('跳转');location.href(’webForm1.aspx’)</script>");//弹出一个框显示“跳转”并且网页跳转到webForm1.aspx。
页面跳转并传参
Response.Redirect("~/WebForm2.aspx"); //使用Redirect方法重定向,跳转到WebForm2.aspx 页面
在页面重定向URL时传参数,用“?”分隔开,比如:地址?参数&参数&参数。。。
string name=”chen”;
string sex=”boy”;
Response.Redirect("~/WebForm2.aspx?Name="+name+”&Sex=”+sex)
注意:需要另一个Request对象接收,才能在webForm.aspx上显示。
输出二进制图片
使用BinaryWrite显示二进制数据。
先添加命名空间,Using System.IO;
FileStream str=new FileStream(Server.MapPath(“pic.gif”).FileMode.Open);
//打开图片,并保存在文件流中
long FileSize=str.Length;//获取文件流长度
byte byt[] =new byte(FileSize);//定义一个数组,用于后面存字节
str.Read(byt,0,FileSize);//读取字节流,并转化为二进制,保存在byt数组中。
str.Close();
Response.BinaryWrite(byt);//读取二进制
另外
Response.Write(“<script>windows.Close();</script>”);//直接关闭窗口
Request对象
主要是检索浏览器向服务器发出的请求信息。就相当于获取上面Response从服务器发送到浏览器的消息。
获取网页见传递的参数。
比如:上面传参的
string name=”chen”;
Response.Redirect("~/WebForm2.aspx?Name="+name)
获取:
Response.Write(“使用Request[string key 方法]”+Request[Name]);
Response.Write(“使用Request.Params[string key 方法]”+Request.Params[Name]);
Response.Write(“使用Request.QueryString[string key 方法]”+Request.QueryString[Name]);
获取客户端浏览器的信息
主要使用Request的Browser对象,访问HttpBrowserCapabilities属性获取当前的相关浏览器信息。
HttpBrowserCapabilities bb=Request.Browser;
Response.Write(“客户端浏览器相关信息”);
Response.Write(“类型:”+bb.Type);
Response.Write(“名称:”+bb.Browser;
Response.Write(“版本:”+bb.Version);
Response.Write(“操作平台:”+bb.Platform);
Response.Write(“是否支持框架:”+bb.Frames);
Response.Write(“是否支持表格:”+bb.Tables);
Response.Write(“是否支持Cookies:”+bb.Cookies);
Response.Write(“远程客户端IP地址:”+bb.UserHostAddress);
....
Application对象
主要是共享一个程序级的先关信息,比如多个用户共享一个Application对象。
使用Application实现全局的存储和读取
由于应用程序中的所有页面都可以访问这个全局变量,所以要对其对象加上,加锁和解锁操作来保证数据的一致性。
比如:
Application.Lock();//加锁
Application[name]=”chen”;
Application.UnLock();//解锁
常常运用于网站访问计数器和网页聊天。
网站访问计数器:
1:
添加一个全局应用程序类(Global.asax),添加后会自动出现
void Application_Start(object sender, EventArgs e)
void Session_Start(object sender, EventArgs e)
void Session_End(object sender, EventArgs e)
...事件,分别在以上三个事件添加方法
void Application_Start(object sender, EventArgs e)
{ Application[“count”]=0;//应用程序启动时运行 }
void Session_Start(object sender, EventArgs e)
{ Application.Lock();//加锁
Application[“count”]=(int)Application[“count”]+1;
Application.UnLock();//解锁 }
//会话启动时运行
void Session_End(object sender, EventArgs e)
{ Application.Lock();//加锁
Application[“count”]=(int)Application[“count”]-1;
Application.UnLock();//解锁 }
//会话关闭时运行:
2:
所设置的网页
protected void Page_Load(object sender, EventArgs e)
{ Label1.Text = "访问量:" + Application["count"]; }
网页聊天和上例相似。
ASP.Net内置对象之网页之间传参(一)的更多相关文章
- ASP.Net内置对象之网页之间传参(二)
Session对象 运用于多个界面调用某一个特定的用户信息,也就是每个Session 对象是独立的,个不受影响. Session对象的读取和存储 Session[name]=”chen”; 可以用来界 ...
- 初识 Asp.Net内置对象之Response对象
Response对象 Respose对象用于将数据从服务器发送回浏览器.它允许将数据作为请求的结果发送到浏览器,并提供有光响应的信息,可以用来在页面中输入数据,在页面中跳转,还可以传递各个页面的参数, ...
- Asp.net内置对象用途说明
Asp.net 内置对象 1.Session当客户第一次请求网页,session创建.当客户最后一次请求页面,一段时间后,session销毁.默认30分钟. 一般存用户信息,即登陆成功后,在sessi ...
- ASP.NET内置对象详解
ASP.NET的内置对象介绍 1.Response 2.Request 3.Server 4.Application 5.Session 6.Cookie Request对象主要是让服务器取得客户端浏 ...
- ASP.NET内置对象一
ASP.NET提供了大量的对象类库,在这些类库中包含了许多封装好的内置对象,我们只需要直接使用这些对象的方法和属性,就能简单快速地完成很多的功能.Request对象.Response对象和Serve对 ...
- asp.net内置对象session和cookie
1.各个机器的session对象不同,不同浏览器之间不通用(换个浏览器,是个新的session). 2.session状态对象起始于网页打开,终止于网页关闭,生命周期有限. 3.关闭浏览器/超时的情况 ...
- 2017-5-22 ASP六大 内置对象
ASP内置对象:提供内建对象,这些对象使用户更容易收集通过浏览器请 求发送的信息.响应浏览器以及存储用户信息(如用户首选项). 1.Request --- 获取请求对象 获取通过地址栏传值过来的对象 ...
- 实验四 使用ASP.NET内置对象 总结
这次实验内容是ASP.NET的一些内置对象的熟悉,感觉看到了上学期JSP的影子,很多地方都很像.像Response对象,Request对象,Context对象等等.以前我老是搞混Response对象和 ...
- 【ASP.NET 基础】ASP.NET内置对象
准确地说,asp.net 并没有内置对象这一说,jsp 里确实把 request.response 这些当作 jsp 的内置对象,这里只不过是借用了一下 jsp 的说法而已.在 Web 中处于中心的是 ...
随机推荐
- 用序列到序列和注意模型实现的:Translation with a Sequence to Sequence Network and Attention
In this project we will be teaching a neural network to translate from French to English. 最后效果: [KEY ...
- coding++:高并发解决方案限流技术---漏桶算法限流--demo
1.漏桶算法 漏桶作为计量工具(The Leaky Bucket Algorithm as a Meter)时,可以用于流量整形(Traffic Shaping)和流量控制(TrafficPolici ...
- LeetCode46 回溯算法求全排列,这次是真全排列
本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是LeetCode的26篇文章,我们来实战一下全排列问题. 在之前的文章当中,我们讲过八皇后.回溯法,也提到了全排列,但是毕竟没有真正写 ...
- 将Python执行代码打包成exe可执行文件
安装pyinstaller pip3 install pyinstaller 进入py文件目录,执行以下指令 pyinstaller -F -w <文件名.py>,-F代表生成可执行文件, ...
- C语言中结构体内存存储方式
C语言中结构体内存存储方式 结构体的默认存储方式采用以最大字节元素字节数对其方式进行对齐,例如一个结构体中定义有char.int类型元素,则结构体存储空间按照int类型占用字节,如果还有double类 ...
- Docker容器入门-基本命令的使用
目前容器技术使用相当广泛 不会或者没有使用过容器感觉都不像是个搞技术的 所以,我也就docker相关内容做一个整理 只有不断的学习,才能保持自己的竞争力 什么是容器? 容器是一种轻量级.可移植.自包含 ...
- html5调用手机摄像头
<input type="file" accept="image/*" capture="camera"><input t ...
- c期末笔记(1)
运算符 1.i++与++i的细微区别 i++与++i 和i++放在一个语句中,则i原本的值先被利用.语句结束后,i的值加一. i的原始值失效,直接加一. 2.int加法 整形数据(int)加上任何类型 ...
- 052.Kubernetes集群管理-故障排错指南
一 故障指南 1.1 常见问题排障 为了跟踪和发现在Kubernetes集群中运行的容器应用出现的问题,常用如下查错方法: 查看Kubernetes对象的当前运行时信息,特别是与对象关联的Event事 ...
- .Net微服务实践(四)[网关]:Ocelot限流熔断、缓存以及负载均衡
目录 限流 熔断 缓存 Header转化 HTTP方法转换 负载均衡 注入/重写中间件 后台管理 最后 在上篇.Net微服务实践(三)[网关]:Ocelot配置路由和请求聚合中我们介绍了Ocelot的 ...