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内置对象之网页之间传参(一)的更多相关文章

  1. ASP.Net内置对象之网页之间传参(二)

    Session对象 运用于多个界面调用某一个特定的用户信息,也就是每个Session 对象是独立的,个不受影响. Session对象的读取和存储 Session[name]=”chen”; 可以用来界 ...

  2. 初识 Asp.Net内置对象之Response对象

    Response对象 Respose对象用于将数据从服务器发送回浏览器.它允许将数据作为请求的结果发送到浏览器,并提供有光响应的信息,可以用来在页面中输入数据,在页面中跳转,还可以传递各个页面的参数, ...

  3. Asp.net内置对象用途说明

    Asp.net 内置对象 1.Session当客户第一次请求网页,session创建.当客户最后一次请求页面,一段时间后,session销毁.默认30分钟. 一般存用户信息,即登陆成功后,在sessi ...

  4. ASP.NET内置对象详解

    ASP.NET的内置对象介绍 1.Response 2.Request 3.Server 4.Application 5.Session 6.Cookie Request对象主要是让服务器取得客户端浏 ...

  5. ASP.NET内置对象一

    ASP.NET提供了大量的对象类库,在这些类库中包含了许多封装好的内置对象,我们只需要直接使用这些对象的方法和属性,就能简单快速地完成很多的功能.Request对象.Response对象和Serve对 ...

  6. asp.net内置对象session和cookie

    1.各个机器的session对象不同,不同浏览器之间不通用(换个浏览器,是个新的session). 2.session状态对象起始于网页打开,终止于网页关闭,生命周期有限. 3.关闭浏览器/超时的情况 ...

  7. 2017-5-22 ASP六大 内置对象

    ASP内置对象:提供内建对象,这些对象使用户更容易收集通过浏览器请 求发送的信息.响应浏览器以及存储用户信息(如用户首选项). 1.Request  --- 获取请求对象 获取通过地址栏传值过来的对象 ...

  8. 实验四 使用ASP.NET内置对象 总结

    这次实验内容是ASP.NET的一些内置对象的熟悉,感觉看到了上学期JSP的影子,很多地方都很像.像Response对象,Request对象,Context对象等等.以前我老是搞混Response对象和 ...

  9. 【ASP.NET 基础】ASP.NET内置对象

    准确地说,asp.net 并没有内置对象这一说,jsp 里确实把 request.response 这些当作 jsp 的内置对象,这里只不过是借用了一下 jsp 的说法而已.在 Web 中处于中心的是 ...

随机推荐

  1. 使用scikit-learn解决文本多分类问题(附python演练)

    来源 | TowardsDataScience 译者 | Revolver 在我们的商业世界中,存在着许多需要对文本进行分类的情况.例如,新闻报道通常按主题进行组织; 内容或产品通常需要按类别打上标签 ...

  2. Ali_Cloud++:阿里云Centos配置iptables防火墙教程

    虽说阿里云推出了云盾服务,但是自己再加一层防火墙总归是更安全些,下面是我在阿里云vps上配置防火墙的过程,目前只配置INPUT.OUTPUT和FORWORD都是ACCEPT的规则 1):检查iptab ...

  3. 在MVC三层项目中如何使用Log4Net

    --前期准备(添加到队列中) 0-1在新建后的MVC项目中的[Models]中添加一个类,用于处理异常信息,并继承自HandleErrorAttribute public class MyExcept ...

  4. 使用vue-cli脚手架创建vue项目

    使用vue-cli脚手架创建vue项目 首先,你已经安装了node. 使用vue-cli@2 创建项目 执行 命令: npm i -g vue-cli@2 //全局安装vue-cli@2脚手架 : v ...

  5. Blazor入门笔记(3)-C#与JS交互

    1.环境 VS2019 16.5.1 .NET Core SDK 3.1.200 Blazor WebAssembly Templates 3.2.0-preview2.20160.5 2.前言 Bl ...

  6. C、Guard the empire(贪心)

    链接:https://ac.nowcoder.com/acm/contest/3570/C 来源:牛客网 题目描述 Hbb is a general and respected by the enti ...

  7. JS去除字符串内的空白字符方法

    有时我们需要对用户的输入进行一些处理,比如用户输入的密码或者用户名我们就需要去除前后空格,下面写一个去除空白字符的方法 function trim(string = '') { return stri ...

  8. webpack-bundle-analyzer打包文件分析工具

    一.安装 npm intall webpack-bundle-analyzer –save-dev 二.配置 在build/webpack.prod.config.js中的module.exports ...

  9. usdt钱包对接,usdt 对接交易平台,usdtapi,以太坊对接,以太坊代币对接

    usdt钱包对接,usdt 对接交易平台,usdtapi,以太坊对接,以太坊代币对接 自动充提币接口开发. 可对接:商城系统,游戏APP,交易平台,网站,各类APP -实现自动充提,查询,上链等功能接 ...

  10. webpack4.0(01.基础配置和初识)

    1.什么是webpack? 2.webpack可以做什莫? 代码转换.文件优化.代码分割.模块合并.自动刷新.代码校验.自动发布 3.我们要学习webpack的什么? 4.使用webpack 1.首先 ...