Asp.NET之对象学习
一、总述
二、具体介绍
1、Request对象
Request对象是用来获取client在请求一个页面或传送一个Form时提供的全部信息,这包含可以标识浏览器和用户的HTTP变量,存储在client的cookie信息以及附在URL后面的值(查询字符串或页面中< Form>段中的HTML控件内的值)。
属性
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDE2ODE2MA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" style="font-size:18px">
方法
2、Response对象
Response对象用来訪问所创建的client的响应,并输出信息到client。它提供了标识server和性能的HTTP变量,发送给浏览器的信息和在cookie中存储的信息。
它也提供了一系列用于创建输出页面的方法。如无所不在的Response
. Write方法。
属性
方法
3、Application对象
在asp.net环境下,Application对象来自HttpApplictionStat类。
它能够在多个请求、连接之间共享公用信息。也能够在各个请求连接之间充当信息传递的管道。
使用Application对象来保存我们希望传递的变量。因为在整个应用程序生存周期中,Application对象都是有效的,所以在不同的页面中都能够对它进行存取,就像使用全局变量一样方便。
属性
方法
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDE2ODE2MA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
4、Session对象
Session对象就是server给client的一个编号。
当一台WEBserver执行时,可能有若干个用户浏览正在浏览这台server上的站点。
当每一个用户首次与这台WWWserver建立连接时,他就与这个server建立了一个Session,同一时候server会自己主动为其分配一个SessionID,用以标识这个用户的唯一身份。
特别说明的是Session对象的变量仅仅是对一个用户有效,不同的用户的会话信息用不同的Session对象的变量存储。
在网络环境下Session对象的变量是有生命周期的。假设在规定的时间没有对Session对象的变量刷新,系统会终止这些变量。
属性
方法
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDE2ODE2MA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
5、Server对象
Server对象提供对server上的方法和属性的訪问。
当中大多数方法和属性是作为有用程序的功能服务的。 Server对象也是Page对象的成员之中的一个。主要提供一些处理页面请求时所需的功能。比如建立COM对象、将字符串的编译码等工作。
属性
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDE2ODE2MA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
方法
三、重点掌握
1、Request对象与Response对象交互
先由Request对象获取所需參数。
Form表单数据提交到server的方式有两种:Get和Post方式。
(1) get是把參数数据队列加到提交表单的ACTION属性所指的URL中。值和表单内各个字段一一相应。在URL中能够看到。
post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。
用户看不到这个过程。
(2) 对于get方式,server端用Request.QueryString[]获取变量的值。
对于post方式,server端用Request.Form.Get()或Request[]获取提交的数据。
(3)
get传送的数据量较小,不能大于2KB。
post传送的数据量较大。一般被默觉得不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。
(4)
get安全性很低。post安全性较高。
由于GET方法传送数据有一定的限制而且不安全,所以表单一般不使用GET方法。
经过server传处理后,由Response对象将信息传回。其方式有下面几种。
(1)直接输出:Response.Write (变量数据或字符串) 比如:
Response.Write("<script language=javascript>alert('欢迎学习ASP.NET')</script>")
(2)链接到其它网页:Response对象的Redirect方法将client浏览器重定向到另外的URL上,即跳转到还有一个网页。比如:
Response.Redirect("http://www.163.net/")
(3)终止当前页的执行 :Response.End()
(4)输出指定文件:Response.WriteFile(FileName) FileName
指代需向浏览器输出的文件的文件名称
2、Application对象中的Lock与Unlock
有可能存在多个用户同一时候存取同一个Application对象的情况。这样就有可能出现多个用户改动同一个Application命名对象,造成数据不一致的问题。
HttpApplicationState 类提供两种方法 Lock 和 Unlock。以解决对Application对象的訪问同步问题,一次仅仅同意一个线程訪问应用程序状态变量。
关于锁定与解锁
锁定:Application.Lock()
訪问:Application(“键名”) = 值
解锁:Application.Unlock()
注意:Lock方法和UnLock方法应该成对使用。
3、Session对象的长处
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDE2ODE2MA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
相关阅读:ASP.NET内置对象
Asp.NET之对象学习的更多相关文章
- (转)探讨:ASP.NET技术的学习顺序问题
探讨:ASP.NET技术的学习顺序问题 摘要:很多人对于ASP.NET的入门和学习顺序比较迷茫,今天让我们一起来跟随作者的思路学习探讨ASP.NET的学习顺序问题,希望有所帮助. 如果你已经有较多的面 ...
- Asp.Net Core WebApi学习笔记(四)-- Middleware
Asp.Net Core WebApi学习笔记(四)-- Middleware 本文记录了Asp.Net管道模型和Asp.Net Core的Middleware模型的对比,并在上一篇的基础上增加Mid ...
- ASP.NET MVC 5 学习教程:Details 和 Delete 方法详解
原文 ASP.NET MVC 5 学习教程:Details 和 Delete 方法详解 在教程的这一部分,我们将研究一下自动生成的 Details 和Delete 方法. Details 方法 打开M ...
- ASP.NET MVC 5 学习教程:数据迁移之添加字段
原文 ASP.NET MVC 5 学习教程:数据迁移之添加字段 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符 ...
- ASP.NET MVC 5 学习教程:Edit方法和Edit视图详解
原文 ASP.NET MVC 5 学习教程:Edit方法和Edit视图详解 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 ...
- ASP.NET MVC 5 学习教程:生成的代码详解
原文 ASP.NET MVC 5 学习教程:生成的代码详解 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 ...
- ASP.NET MVC 5 学习教程:创建连接字符串
原文 ASP.NET MVC 5 学习教程:创建连接字符串 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 ...
- ASP.NET MVC 5 学习教程:控制器传递数据给视图
原文 ASP.NET MVC 5 学习教程:控制器传递数据给视图 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字 ...
- ASP.NET MVC 5 学习教程:添加模型
原文 ASP.NET MVC 5 学习教程:添加模型 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 通过控 ...
随机推荐
- 微信小程序 客服自动回复图片
产品需求是,在客服对话框里,发送特定的文字,回复我们的二维码: 小城程开发完成后,这个自动回复图片的功能就摆在了眼前.刚开始我们想到的是:在线客服功能的设置里设置好自动回复的图片,但是目前设置不支持自 ...
- Colletions工具类常用方法
Collections 工具类常用方法: 排序 查找,替换操作 同步控制(不推荐,需要线程安全的集合类型时请考虑使用 JUC 包下的并发集合 排序操作 void reverse(List list)/ ...
- ios xmpp 发送语音图片解决方案
ios xmpp 发送语音,图片解决方案,有需要的朋友可以参考下. 目前做IM多是用的xmpp. 因为项目需求需要实现语音和图片的发送. 发送语音图片有三种方法. 1,xmpp smack.文件传输方 ...
- Bullet:关于ORACLE中的HASH JOIN的参数变化
Oracle在7.3引入了hash join. 但是在Oracle 10g及其以后的Oracle数据库版本中,优化器,实际是CBO,也是因为HASH JOIN仅适用于CBO,在解析目标SQL时是否考虑 ...
- springBoot启动及发布
1.在项目编辑器(IDEA)中启动 运行springBoot项目Application类中main方法,这两个按钮都可以.如下图: 当然还有我们配置的启动按钮,这是最常用的启动方式,不再赘述,如下图: ...
- <SpringMvc>入门四 响应结果
1.响应String类型 根据试图解析器,去找相对应的jsp Model将对象存在request中 2.响应void类型 可以看出,此时void方法执行了,系统默认会去找testVoid.jsp 意思 ...
- Redis多实例配置以及主从同步
一.多实例配置 1.准备俩配置文件,开两个就准备两个 redis-6380.conf redis-6381.conf 2.分别写入配置信息(这里简化了配置) # 运行在6380端口 bind 172. ...
- buf.writeIntBE()函数详解
buf.writeIntBE(value, offset, byteLength[, noAssert]) buf.writeIntLE(value, offset, byteLength[, noA ...
- 【tips】xadmin - django第三方后台管理系统
Django 为大家提供了一个完善的后台管理系统—admin,但是这个后台管理系统总体来说不太适合国人的习惯,所以有大神就使用 bootstrap 和 jQuery,为我们开发了一个第三 方的 Dja ...
- HYSBZ - 1050(旅行comf 并查集Java实现)
HYSBZ - 1050(旅行comf Java实现) 原题地址 解法:枚举每一条边,对于这条边,我们需要找到集合中和其值相差最小的最大边,这个集合是指与包括i边在内的ST联通集.对于这一要求,我们只 ...