Request

 

该对象用于检索从浏览器向服务器所发送的请求中的信息。在按下“提交”按钮时,Request对象将读取和提取通过HTTP请求发送的参数。在用户提交表单时,包含在输入控件中的数据将与表单一起被发送。

当向服务器提交数据时,分为两种方式:

Get提交:

  1. //get
  2. string userName = Request.QueryString["txtUserName"].ToString();
  3. string userPwd = Request.QueryString["txtUserPwd"].ToString();
  4. Response.Write("登录的用户名为" + "userName ");

Post提交:

  1. //post
  2. string userName = Request["txtUserName"].ToString();
  3. string userPwd = Request["txtUserPwd"].ToString();
  4. string userName = Request.Form.Get("txtUserName").ToString();
  5. string userPwd = Request.Form.Get("txtUserPwd").ToString();

Post与Get的不同:

1,Get将表单中数据的按照variable=value的形式,添加到action所指向的URL后面,并且两者使用“?”连接,而各个变量之间使用“&”连接;Post是将表单中的数据放在form的数据体中,按照变量和值相对应的方式,传递到action所指向URL。

比如你有一个页面index.html,这个页面有一个文本域,名称是:a,值是123,你用get提交后,你的url会变成:index.html?a=123,在获取的时候,就是从浏览器中回去参数了,而不是表单!

2,Get是不安全的,因为在传输过程,数据被放在请求的URL中,而如今现有的很多服务器、代理服务器或者用户代理都会将请求URL记录到日志文件中,然后放在某个地方,这样就可能会有一些隐私的信息被第三方看到。另外,用户也可以在浏览器上直接看到提交的数据,一些系统内部消息将会一同显示在用户面前。Post的所有操作对用户来说都是不可见的。

3,Get传输的数据量小,这主要是因为受URL长度限制;而Post可以传输大量的数据,所以在上传文件只能使用Post。

4,Get是Form的默认方法。

Response

 

主要用于服务器端向客户端发送数据,其中可以利用Response.Write直接向客户发送信息,也可以利用response.Redirect进行重新定位客户端到另一个URL上去,当然也可以利用Response.Cookies来设置Cookies的值。

Response和Request区别:

Application

 

此对象用于共享应用程序级信息。即,维护整个应用程序的一组变量,这些变量可以由所有访问该应用程序的用户共享。

使用Application对象来使整个ASP应用程序的所有用户共享数据,把一个ASP程序中的不同用户、不同页面联系在一起

Session

 

该对象用于存储在多个页面调用之间特定用户的信息。存储访问者的用户信息,多个页面可以访问该信息,但是两个访问者之间不能共享该信息。

每个用户以这台web服务器建立连接时,他就创建链接,并与这个服务器建立了一个session,并且服务器就自动为其分配一个sessionID,用以识别这个用户的唯一身份。特别说明的是Session对象的变量只是对一个用户有效,不同的用户的会话信息用不同的Session对象的变量存储。在网络环境下Session对象的变量是有生命周期的,如果在规定的时间没有对Session对象的变量刷新,系统会终止这些变量。

Server

 

该对象用于访问服务器上的资源。来获取你现在请求的那个服务器中的一些信息。例如:访问服务器上创建和安装的组件。

  1. //单击加载,上传服务器
  2. protected void btnLoad_Click(object sender, EventArgs e)
  3. {
  4. this.FileUpload1.PostedFile.SaveAs(Server.MapPath("upFile") + "\\1.jpg");
  5. this.Image1.ImageUrl = Server.MapPath("upFile") + "\\1.jpg";
  6. }

Cookie:

 

在Web程序设计中,它表示一个长度不超过4K的一个普通的文本文件。这个文件在用户的硬盘上,可以由Web浏览器进行访问。由WEB服务器嵌入用户浏览器中,以便标识用户,且随同每次用户请求发往WEB服务器。这样可以让服务器识别是哪个用户。

Global.asa文件:

 

用来存储事件信息和由应用程序全局使用的对象。global.asa是ASP的一个全局应用文件.主要是定义Session对象和Application对象,以及相应的事件.

Session对象和Application对象都有两个事件,要使用他们的事件,就必须首先在Global.asa文件文件中声明,该文件对于用户来说是不可见的,文件名也是固定的,并且该文件还必须放在应用程序的根目录下,每个应用程序只能拥有一个Global.asa文件.

举例:查看在线人数,在global.asa中编写

  1. public class Global : HttpApplication
  2. {
  3. void Application_Start(object sender, EventArgs e)
  4. {
  5. // 在应用程序启动时运行的代码
  6. BundleConfig.RegisterBundles(BundleTable.Bundles);
  7. AuthConfig.RegisterOpenAuth();
  8. Application.Add("count", 0);
  9. Application["online"] = 0;
  10. }
  11. void Application_End(object sender, EventArgs e)
  12. {
  13. //  在应用程序关闭时运行的代码
  14. }
  15. void Application_Error(object sender, EventArgs e)
  16. {
  17. // 在出现未处理的错误时运行的代码
  18. }
  19. void Session_Start(object sender, EventArgs e)
  20. {
  21. Session.Timeout = 1;
  22. Application.Lock();
  23. Application["count"] = (int)Application["count"] + 1;
  24. Application["online"] = (int) Application["online"] +1;
  25. Application.UnLock();
  26. }
  27. void Session_End(object sender, EventArgs e)
  28. {
  29. Application.Lock();
  30. Application["online"] = (int)Application["online"] - 1;
  31. Application.UnLock();
  32. }
  33. }

在web应用程序中编写:

  1. protected void Page_Load(object sender, EventArgs e)
  2. {
  3. Response.Write(Application["count"].ToString());
  4. }

以上这些对象提供了相当多的功能,但是不同的对象的应用场合不同,这需要我们加深理解,在以后的实践中应用。

ASP.NET的内置对象的更多相关文章

  1. ASP.NET常用内置对象

    ASP.NET 常用内置对象:Response对象.Request对象.Session对象.Server对象.Application对象 1.Response对象: (1) 用于向浏览器输出信息 常用 ...

  2. ASP.NET 的内置对象

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

  3. C#构造方法(函数) C#方法重载 C#字段和属性 MUI实现上拉加载和下拉刷新 SVN常用功能介绍(二) SVN常用功能介绍(一) ASP.NET常用内置对象之——Server sql server——子查询 C#接口 字符串的本质 AJAX原生JavaScript写法

    C#构造方法(函数)   一.概括 1.通常创建一个对象的方法如图: 通过  Student tom = new Student(); 创建tom对象,这种创建实例的形式被称为构造方法. 简述:用来初 ...

  4. Asp.Net六大内置对象

    前面学习mvc管道处理模型的时候,我们晓的HttpContext是贯穿全文的一个对象,在HttpRuntime产生,现在我们所谓的Asp.Net六大内置对象,其实就是HttpContext的属性.具体 ...

  5. ASP.NET 常用内置对象详解-----Response

    利用提供的内置对象,可以实现页面之间的数据传递及实现一些特定的功能,如:缓冲输出,页面重定向等等. Response :响应,反应 Request:请求 Server:服务器 Application: ...

  6. ASP.NET常见内置对象(一)

    在web开发中,数据库都是通过HTTP协议来传输的.但HTTP是一个无状态协议,不会保留数据的状态和信息. 为了解决问题.各种开发语言都提供了状态管理功能. 状态管理是在同一页或不同页的多个请求发生时 ...

  7. Asp.net的内置对象!!!

    还记得自己第一次面试的时候,面试官问的问题就是.net内置对象的问题,当时就让尴尬的要死... 所以作为新手的我们还是要知道这些轮廓的东西的! 1.Response对象 2.Request对象 3.A ...

  8. ASP.NET的内置对象 —— Request 对象

    Request 对象最大的用途在于提交表单信息. (可获取页面间传递的值.客户端的 IP 地址等) 3.2.2 获取页面间传送的值 获取页面传送参数值是 Request 对象最广泛的应用之一. ASP ...

  9. ASP.NET的内置对象 —— Response 对象

    在 ASP.NET 中,页面实际上是一个输出 HTML 的可执行对象. 传统的 ASP 程序通常将 ASP 代码和 HTML 标签集成在一个文件中,或者将其分离于多个文 件. 当执行文件时,服务器回从 ...

随机推荐

  1. Windows下MySQL配置及安全加固总结

    Windows下MySQL配置及安全加固总结 在网管的实际使用过程中,MySQL数据库在安装后的配置及安全加固内容,在客户中逐渐要求越来越高.从反馈的问题看,一般都是由第三方软件公司的软件扫描整个系统 ...

  2. sql privot

    http://www.studyofnet.com/news/295.html 本文导读:T-SQL语句中,Pivot运算符用于在列和行之间对数据进行旋转或透视转换,PIVOT命令可以实现数据表的列转 ...

  3. 网络通信框架Volley使用详细说明

    前一篇粗略的介绍了一下Volley,并在最后附上了一段使用代码,这一篇详细的介绍一下Volley的使用.前面也说了Volley主要获取JSON对象和图片加载,这里也分为两部分介绍. 1.获取JSON对 ...

  4. 【BZOJ4557】[JLoi2016]侦察守卫 树形DP

    [BZOJ4557][JLoi2016]侦察守卫 Description 小R和B神正在玩一款游戏.这款游戏的地图由N个点和N-1条无向边组成,每条无向边连接两个点,且地图是连通的.换句话说,游戏的地 ...

  5. 【BZOJ4641】基因改造 KMP

    [BZOJ4641]基因改造 Description "人类智慧的冰峰,只有萌萌哒的我寂寞地守望." --TB TB正走在改造人类智慧基因的路上.TB发现人类智慧基因一点也不萌萌哒 ...

  6. 160805、oracle查询:取出每组中的第一条记录

    在Java 9发布之前,我们来分享一些Java 8开发技巧 [以下为译文] 在使用JAVA 8进行开发多年后,结合个人使用IntelliJ IDEA的心得,我总结了以下几个JAVA8技巧供大家参考. ...

  7. 学习使用turtlebot2——ROS上安装turtlebot2

    安装环境: 安装Ubuntu 14.04版本和ROS Indigo 参考:http://wiki.ros.org/turtlebot/Tutorials 安装步骤     有两种安装方法,一种直接的安 ...

  8. 淘宝订单数据转CSV

    <html> <body> <div id="result"> </div> <div> <textarea st ...

  9. python系列十七:Python3 标准库概览

    #!/usr/bin/python #-*-coding:gbk-*- #Python3 标准库概览'''操作系统接口os模块提供了不少与操作系统相关联的函数.建议使用 "import os ...

  10. 转!!mysql 查询条件不区分大小写问题

    做用户登录模块时,输入用户名(大/小写)和密码 ,mysql都能查出来.-- mysql查询不区分大小写. 转自 http://blog.csdn.net/qishuo_java/article/de ...