学习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. JavaScript中执行环境和栈

    在这篇文章中,我会深入理解JavaScript最根本的组成之一 : "执行环境(执行上下文)".文章结束后,你应该对解释器试图做什么,为什么一些函数/变量在未声明时就可以调用并且他 ...

  2. PAT甲题题解-1014. Waiting in Line (30)-模拟,优先级队列

    题意:n个窗口,每个窗口可以排m人.有k为顾客需要办理业务,给出了每个客户的办理业务时间.银行在8点开始服务,如果窗口都排满了,客户就得在黄线外等候.如果有一个窗口用户服务结束,黄线外的客户就进来一个 ...

  3. 第四次Scrum meeting

    第四次Scrum meeting 会议内容: 沟通方面:与学霸在线组.学霸手机客户端组进行沟通,了解现阶段各个小组的进度,并针对接口结构方面进行调整 前后端:我们完全可以是不需要界面的,但是为了用户的 ...

  4. Linux内核分析 实验三:跟踪分析Linux内核的启动过程

    贺邦 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程 http://mooc.study.163.com/course/USTC-1000029000 一. 实验过程 ...

  5. sql 更新多条记录

    转载:https://www.cnblogs.com/hfultrastrong/p/6905057.html 如果你想更新多行数据,并且每行记录的各字段值都是各不一样,你会怎么办呢?本文以一个示例向 ...

  6. redis集群的测试

    原文:http://blog.sina.com.cn/s/blog_53b45c4d0102wg10.html 1.测试存取值 客户端连接集群redis-cli需要带上 -c ,redis-cli - ...

  7. [转帖] mysql 用户 权限 密码等操作记录

    前言 From :https://blog.csdn.net/yu12377/article/details/78214336 mysql5.7版本中用户管理与以前版本略有不同,在此记录,以备忘 登陆 ...

  8. python进阶-虚拟环境

    virtualenv # 安装 pip install virtualenv # 查看版本,确认安装完成 virtualenv --version # 创建虚拟环境 virtualenv my_env ...

  9. phaser3 微信小游戏入门

    phaser与eget, laya, pixi.js本质上没什么区别. 都是渲染引擎.  其它的都是配角.  phaser的特点是.代码容易理解 功能比较全面. 个人比较喜欢phaser的地方 twe ...

  10. DELPHI 字符串与日期格式互转

    procedure TForm1.Button1Click(Sender: TObject); var D:TDateTime; s:string; begin D:=VarToDateTime('0 ...