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 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 通过控 ...
随机推荐
- 网络编程基础_3.APC队列
APC队列 #include <stdio.h> #include <windows.h> // 保存 IO 操作的结果 CHAR Buffer1[] = { }; CHAR ...
- nginx报错:Permission denied
vi /etc/selinux/config #SELINUX=enforcing #注释掉 #SELINUXTYPE=targeted #注释掉 SELINUX=disabled #增加 :wq! ...
- 前端axios发送的数据后端接收不到(没有自动依赖注入)可能的原因
前端请求头content-type没有进行正确设置,后端无法解析该类型数据,比如说: 后端若想接收json类型的数据,则需要配置相应的转换器,(spring中可使用@RequestBody注解),若没 ...
- 网络编程-socketserver
网络编程使用socketserver,通常包括以下几步:一.定义类,并继承socketserver.BaseRequestHandler 二.重写handle方法 三.实例化TCPServer,并传递 ...
- JAVA基础——异常--解析
简介 异常处理是java语言的重要特性之一,<Three Rules for effective Exception Handling>一文中是这么解释的:它主要帮助我们在debug的 ...
- angular4打包以后,刷新报404
项目打包以后,上传到服务器,可以正常的切换页面,但是一旦刷新就会报404,找不到页面,其解决方法是:在app.module.ts里面引入下面的模块: import {HashLocationStrat ...
- 09js、MySQL相关
09js.MySQL相关-2018/07/19 1.js的dom 理解一下文档对象模型:html文件加载到内存之后会形成一颗dom树,根据这些节点对象可以进行脚本代码的动态修改;在dom树当中 一切皆 ...
- Flask项目中整合各组件
一.介绍 主要介绍flask_sqlalchemy.flask_script.flask_migrate这三个组件该如何整合到flask项目中,以及如何使用. # 安装组件 pip3 install ...
- Libreswan软件的密钥协商协议IKEv1主模式实现分析
Libreswan软件的密钥协商协议IKEv1主模式实现分析 1 协商过程 IKEv1(互联网密钥交换协议第一版)是IPsec VPN隧道协商使用的标准密钥协商协议,其协商过程如下图所示. 总共来回交 ...
- jet flow in a combustion chamber
Table of Contents 1. contacts 2. Paper digest 2.1. LES vs. RANS 2.2. Dynamics of Transient Fuel Inje ...