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 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 通过控 ...
随机推荐
- CAD二次开发控件,dwg控件,网页DWG控件,手机浏览编辑DWG控件
梦想绘图插件5.2(MxDraw5.2) 是国内最强,最专业的CAD开发插件(控件),不需要AutoCAD就能独立运行. 控件使用VC 2010开发,具有30万行代码规模,最早从2007年第一个版本完 ...
- 2018最新Python小白入门教程,30天学会Python
随着Python的技术的流行,Python在为人们带来工作与生活上带来了很多的便捷,因为Python简单,学起来快,也是不少新手程序员入门的首选语言.作为一名Python爱好者,我也想跟大家分享分享我 ...
- luogu P3899 [湖南集训]谈笑风生 线段树合并
Code: #include<bits/stdc++.h> #define maxn 300002 #define ll long long using namespace std; vo ...
- 第一章 React新的前端思维方式
---恢复内容开始--- 第一章 React新的前端思维方式 1.1 初始化一个React项目 1.安装create-react-app npm install --global create-rea ...
- 洛谷——P3369 【模板】普通平衡树(splay)(基础splay,维护一些神奇的东东)
P3369 [模板]普通平衡树 平衡树大法好,蒟蒻(博主)最近正在收集高级数据结构的碎片,企图合成数据结构的元素之力来使自己的RP++... 您需要写一种数据结构(可参考题目标题),来维护一些数,其中 ...
- Luogu P1297 [国家集训队]单选错位
P1297 [国家集训队]单选错位 题目背景 原 <网线切割>请前往P1577 题目描述 gx和lc去参加noip初赛,其中有一种题型叫单项选择题,顾名思义,只有一个选项是正确答案.试卷上 ...
- LINUX-初始化一个文件系统
mkfs /dev/hda1 在hda1分区创建一个文件系统 mke2fs /dev/hda1 在hda1分区创建一个linux ext2的文件系统 mke2fs -j /dev/hda1 在hda1 ...
- shoppping collection
personal shopping collections shop Table of Contents 1. phone network 2. band share 3. Motorcycle He ...
- Maven学习总结(32)——Maven项目部署到Tomcat8中
1.环境准备 Maven.Tomcat8.Eclipse 2.maven中的镜像配置 大家知道,mavne默认使用的是国外的镜像,但是速度很慢,这里建议大家使用阿里的中央仓库镜像. 阿里出品,必出精品 ...
- [luoguP2782] 友好城市(DP)
传送门 转化成 lis 后 n2 搞就行 ——代码 #include <cstdio> #include <iostream> #include <algorithm&g ...