学习ASP.net又一次接触了B/S开发。下面先通过一张图对ASP.net有一个宏观结构的总结。之后将详细介绍ASP.net中的六大对象。

1.Request从客户端得到数据,包括基于表单的数据和通过URL发送的参数列表信息,还可以接收来自用户的Cookie信息。

Request是类HttpRequest一个具体对象。主要属性有:

Request.Form属性获取数据,通过该属性,读取

之间的表单数据:注意提交方式要设定为“Post”。

Request.QueryString属性获取数据,可以获取HTTP查询字符串变量集合。即可以读取地址信息。注意提交方式设置为“Get”。

Post和Get的区别

ASP.net中通过表单向服务器端发送数据,其发送数据方式有两种(沿用HTML的):Post和Get。Get是将传送的数据附加到URL后面;Post方法是将传送的数据,封装为一个数据集进行传送过去。

Post方法时信息的读取

string strUserName = Request.Form.Get("txtUserName").ToString();注意form相当于一个集合,所以,有多种方法获得相应的数据。string strUserName=Request.Form["txtUserName"].ToString();

Get方法时信息的读取

string strUserName=Request.QueryString["txtUserName"].ToString();

string strUserName=Request.QueryString.Get("txtUserName").ToString();

小结

无论哪种提交方法,都可以用这种方法:Request["txtUserName"].ToString();获得数据。

2.Response用于输出数据到客户端,包括向浏览器输出数据、重定向浏览器到另一个url或向浏览器输出

Response是类HttpResponse的一个对象。属性和方法:

Response.Write()向客户端发送字符串信息。

Response.Buffer用来控制是否采用响应缓存,默认为true。

Response.Clear()清空缓存区中的数据,这样缓存区中的没有发送到浏览器端的数据被清空。

3.Server提供对服务器上的属性和方法的访问

其类名为HttpServerUtility,主要属性和方法:

MachineName:获取服务器的计算机名称。

ScrptTimeout:用于指定脚本在终止之前在服务器上运行的时间周期。

方法说明:

CreateObject创建COM对象的一个服务器实例。

Execute执行当前服务器上的另一个aspx页,执行完该页后再返回本页继续执行。
HtmlEncode对要在浏览器中显示的字符串进行HTML编码并返回已编码的字符串。
HtmlDecode对HTML编码的字符串进行解码,并返回已解码的字符串。
MapPath返回与Web服务器上的指定虚拟路径相对应的物理文件路径。
Transfer终止当前页的执行,并为当前请求开始执行新页。

UrlEncode将代表URL的字符串进行编码,以便通过URL从Web服务器到客户端进行可靠的HTTP传输。
UrlDecode对已被编码的URL字符串进行解码,并返回已解码的字符串。
UrlPathEncode对URL字符串的路径部分进行URL编码,并返回已编码的字符串。

4.Application作用于整个应用程序的状态对象。

方法:

添加或创建一个对象

Application.Add("key",value);或Application("key")=value;

获取Application集合中某个对象的值

int i = (int)Application("key");或int i = Application.Contents["key"];或int i = Application.Get("key")

更新集合中的对象值

Application.Set("key",value);或Application["key"] = (int)Application["key"] +1;更新的时候最好加上锁机制:application.Lock()和Application.UnLock()。

移除对象

Application.Remove("key");移除指定对象。Application.RemoveAll();或Application.Clear()移除所有对象。

基本事件

Application_Start,Application_End和Application_Error。这些事件在Global.asax文件中。Global.asax文件时一个可选(可以没有,有只能有一个)的文件,该文件包含响应ASP.net应用程序或HTTP模块所引发的应用程序级别和会话的代码(事件)。

5.Session会话级对象,用户跟踪单一用户的会话。比如对网站访问量的实现。方法和属性与Application类似。

6.Cookie,同Application和Session,保存数据信息。就是Web服务器保存在用户硬盘上的一段文本。Cookie允许一个Web站点在用户的电脑上保存信息并且随后再取回它。信息的片断以‘键/值’对的形式存储。 
Cookie是保存在客户机硬盘上的一个文本文件,可以存储有关特定客户端、会话或应用程序的信息,在.NET中对应HttpCookie类。 
有两种类型的Cookie:会话Cookie(Session Cookie)和持久性Cookie。前者是临时性的,一旦会话状态结束它将不复存在;后者则具有确定的过期日期,在过期之前Cookie在用户的计算机上以文本文件的形式存储。 
在服务器上创建并向客户端输出Cookie可以利用Response对象实现。

学习感受:以上是对ASP.net中的对象的一个介绍性总结,在ASP.net视频里收获最多的是控件的使用,除了让我感觉好玩的还有两类,一类是验证控件,包括必填字段,比较控件,范围比较,正则表达式,自定义验证以及验证汇总。通过这些验证实现我们平时在网上注册信息的基本验证功能。另一类是ADO.net中的DataSet对象和.NET数据提供程序以及显示数据的控件模板的使用。 ASP.net中介绍的控件有一部分在牛腩中使用过,通过视频的讲解和实现例子,对他们有了更深的了解。

ASP.net学习总结的更多相关文章

  1. asp.net学习之Repeater控件

    asp.net学习之Repeater控件 文章摘自:http://www.cnblogs.com/shipfi/archive/2009/10/19/1585703.html Repeater控件和D ...

  2. 分享asp.net学习交流社区

    亲们 最近发现一个很好的asp.net学习交流的QQ群——237221223.爱好asp.net的亲们可以加入到大家庭中去哈.大家在一起交流学习

  3. asp.net学习资源汇总

    名称:快速入门地址:http://chs.gotdotnet.com/quickstart/描述:本站点是微软.NET技术的快速入门网站,我们不必再安装.NET Framework中的快速入门示例程序 ...

  4. asp.net学习之DataList控件

    asp.net学习之DataList控件   DataList控件与Repeater控件一样由模板驱动,与Repeater控件不同的是: DataList控件默认输出是一个HTML表格.DataLis ...

  5. asp.net学习之 数据绑定控件--List数据绑定控件

    原文:asp.net学习之 数据绑定控件--List数据绑定控件 List控件(如 CheckBoxList.DropDownList.ListBox 和 RadioButtonList 类)继承自L ...

  6. asp.net学习之数据绑定控件、数据源控件概述

    原文:asp.net学习之数据绑定控件.数据源控件概述 1.asp.net数据绑定控件分为三大类,每个类分别进行详细:      ● 列表式数据绑定控件: 列表式数据绑定控件常用来在一个表格内的一个字 ...

  7. asp.net学习之 数据绑定控件--表格绑定控件

    原文:asp.net学习之 数据绑定控件--表格绑定控件     数据绑定 Web 服务器控件是指可绑定到数据源控件,以实现在 Web 应用程序中轻松显示和修改数据的控件.数据绑定 Web 服务器控件 ...

  8. asp.net学习之GridView事件、GridViewRow对象

    原文:asp.net学习之GridView事件.GridViewRow对象 1. GridView控件的事件 GridView有很多事件,事件可以定制控件的外观或者行为.事件分为三类     1.1 ...

  9. asp.net学习之GridView七种字段

    原文:asp.net学习之GridView七种字段 asp.net中GridView绑定到数据源时,可以自动显示数据源的各个字段.只要设定其AutoGenerateColumns为TRUE即可.但这, ...

  10. asp.net学习之再论sqlDataSource

    原文:asp.net学习之再论sqlDataSource 本节从上一节没有阐述的几个方面,再讨论一下SqlDataSource的用法及注意的事项.     上一节的链接地址如下:http://www. ...

随机推荐

  1. 云服务器+tomcat+mysql+web项目搭建部署

    云服务器+tomcat+mysql+web项目搭建部署 1.老样子,开头墨迹两句. 作为我的第二篇文章,有很多感慨,第一篇人气好低啊,有点小丧气,不过相信我还是经验少,分享的都是浅显的,所以大家可能不 ...

  2. 父类与子类this相关问题

    1.SinglyLinkedList: package No3_PolySinglyList; /*实现 带头结点的单链表SinglyLinkedList类*/ public class Singly ...

  3. PHP 验证IP的合法性

    php验证IP的合法性! function get_ip(){ //判断服务器是否允许$_SERVER if(isset($_SERVER)){ if(isset($_SERVER[HTTP_X_FO ...

  4. Oracle 最新版本变化 转帖

    版本更迭 http://www.sohu.com/a/163264045_505827 Oracle Database的下一个版本将是 Oracle 18. 目的 为了更快的.通过每年的版本发布将新特 ...

  5. [转帖] Linux 下面 Find的使用...--- 自己不会用 find

    13个实用的Linux find命令示例  原始博客地址:  https://www.cnblogs.com/chenshoubiao/p/4838089.html   之前只会用locate  基础 ...

  6. C# 项目迁移 Microsoft.VisualStudio.Tools.Office.BuildTasks 生成解决方法报错:请确认 <UsingTask> 声明正确,该程序集及其所有依赖项都可用

    问题定位: 1.在Server2003上使用vs2010开发的项目,移到Win8上,同样使用vs2010打开.在生成解决方案的时候有如下报错: 未能从程序集 Microsoft.VisualStudi ...

  7. 关于PSP(个人软件过程)

    在第一堂课时,杨老师就提到了PSP(个人软件过程),但是我从2016年3月10日才开始进行粗略的PSP时间管理统计,这是长迭代,用老师的话“差评”.然后在2016年3月11日下午的软件项目管理上,老师 ...

  8. OneZero第四周第一次站立会议(2016.4.11)

    1. 时间: 15:10--15:25  共计15分钟. 2. 成员: X 夏一鸣 * 组长 (博客:http://www.cnblogs.com/xiaym896/), G 郭又铭 (博客:http ...

  9. python进阶:Python进程、线程、队列、生产者/消费者模式、协程

    一.进程和线程的基本理解 1.进程 程序是由指令和数据组成的,编译为二进制格式后在硬盘存储,程序启动的过程是将二进制数据加载进内存,这个启动了的程序就称作进程(可简单理解为进行中的程序).例如打开一个 ...

  10. EntityFramework中Json序列化的循环引用问题解决--Newtonsoft.Json

    1.在使用EF时,由于数据库主外键关联,将对象进行Json序列化时会遇到循环引用的问题 //EF 中由于数据库主外键关联,对象的序列化经常出现循环引用问题 //使用.Net 自带的序列化工具,序列化出 ...