ASP.NET

(个人整理,欢迎批评指正。交流QQ:267307031)

一、内置对象有哪些?他们常用的属性和方法有哪些,功能是什么?

1.Response对象

用于: 从输出页面读取/写入文本,将用户重新定向到另一个页面,有条件地结束应用程序连接,设置/获取输出内容类型,检查客户端与服务器的连接状态, 读取/写入 Cookie

属性:

Expires 指定浏览器中缓存的页面过期之前的时间(以分钟为单位)

Output 启用到输出 HTTP 响应流的文本输出

OutputStream 启用到输出 HTTP 内容主体的二进制输出,并作为响应的一部分

方法:

Write 用于向当前 HTTP 响应流写入文本,使其成为返回页面的一部分

End 停止处理至客户端的输出,返回目前为止已创建的页面内容并触发 Application 对象的 EndRequest 事件

Redirect 将用户从请求页面重新定向或带到另一页面

2.Request对象

对象封装客户端请求页面或提交表单时提供的信息。这些信息包括: 识别用户和浏览器的 HTTP 变量,在客户端浏览器上为网站存储的 Cookie,作为查询字符串或网页 <FORM> 部分的 HTML 控件值添加到 URL 的值,如果是安全保护网站,有关网站安全的信息

属性

Browser  获得有关请求浏览器能力的信息

Form  获得网页中定义的窗体变量的集合

QueryString 获得以名/值对表示的 HTTP 查询字符串变量的集合

Params  获得由以名/值对表示的 QueryString、Form、Cookie 、ServerVariables 组成的集合

Url  返回有关当前请求的 URL 信息

方法:MapPath  将请求 URL 中提到的虚拟路径映射到服务器上资源的实际物理路径

 传递Form表单中的控件值用Request.Form 获取值,地址栏中传递的参数用 Request.QueryString获取

3.Application对象

存储并维护应用程序级的数据。所有客户端都可以访问的application 属于应用程序

属性:

ontents :用于访问应用程序状态集合中的对象名;

StaticObjects :确定某对象指定属性的值或遍历集合,并检索所有静态对象的属性 

    AllKeys:返回全部Application对象变量名到一个字符串数组中。

    Count:获取Application对象变量的数量。

    Item:允许使用索引或者Application变量名称传回内容值

方法:add() clear() lock() remove() removeAll() set() unLock()

   4.Session对象

1.包含特定于某个用户的信息, 各个页面都可以使用,默认在服务器进程内的内存,可以保存复杂结构数据。各个客户端独立的session对象,存储量大,在服务器端 一个客户端访问时,在服务器端产生一个session 属于用户的,2.当会话过期或终止时,服务器就会清除 Session 对象,3.在用户会话期间可以记录和监视特定于用户的信息

属性:TimeOut

   Contents: 用于确定指定绘画项的值或遍历Session对象的集合。

   StaticObjects:确定某对象指定属性的值或遍历集合,并检索所有静态对象的属性

  TimeOut:传回或确定Session对象变量的有效时间

方法:

  Abandon:结束当前会话,并清除会话中的所有信息。

 Clear:清除全部的Session对象变量,但不结束会话。

Session对象是与特定用户相联系的。各个Session对象是完全独立的。不会互相影响

   5.Cookie对象

用来保存客户端浏览器请求的服务器网页,也可以用它存放非敏感性的用户信息,信息保存的时间可以根据用户的需要进行设置。并非所有的浏览器都支持Cookie,并且数据信息是以文本的形式保存在客户端计算机的。

属性:

Expires:设定Cookie变量的有效时间。默认为1000分钟。

  Name:获取Cookie变量的名称。

  Value:获取或设置Cookie变量的内容值。

  Path:获取或设置Cookie使用的URL。

方法

Equals:确定指定Cookie是否等于当前的Cookie

     ToString 返回此Cookie对象的一个字符串表示形式

Cookie中的数据加密,创建及存取多个键值的Cookie对象,设定Cookie变量的生命周期

6.Server对象

属性:

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

  ScriptTimeout:获取和设置请求超时值

方法:

Execute:在当前请求的上下文中执行指定资源的处理程序,然后将控制返回给该处理程序.

将执行从当前页面转移到另一个页面,并将执行返回到当前页面.执行所转移的页面在同一浏览器窗口中执行,然后原始页面继续执行.所以执行Execute方法后,原始页面保留控制权。

HtmlDecode:对已被编码以消除无效HTML字符的字符串进行编码 HtmlEncode:

MapPath:用来返回与Web服务器上的指定虚拟路径相对应的物理文件路径。

Server.MapPath(path);可以使用这个获取当前目录所在服务器的物理路径

UrlDecode:UrlEncode:

Transfer:终止当前页的执行,并为当前请求开始执行新页

HttpServerUtility 类的Execute()Transfer()的区别关键在于执行后控制权是否返回原先页面

HTMLEncode()HTMLEncode()主要用于对HTML 标签和URL进行编码,对站点或程序的安全具有重要意思

MapPath()获取物理路径时需要注意是绝对路径还是相对路径

二、状态管理:

http://blog.csdn.net/lxhgddy/article/details/3696779

客户端状态有哪些?分别的优缺点什么?

1.视图状态Viewstate :同一个页面不同请求.。
小量,简单的数据 一个Web页面的生命期 单个用户 客户端

  2.隐藏字段(隐藏域):同一个页面 安全性比viewState要差一些,只能保存一个单值数据

  3.查询字符串:  同一个页面或者不同页之间 直接相关的两个页面 

       eg.在地址栏末尾 加?(键值对) 传值  所传的值 安全性不高 没有加密

  4.cookie:存储在客户端文件系统的文本文件中或客户端浏览器对话的内存中的少量数据,它主要用来跟踪数据设置 

  保存特定的客户端信息, 创建:respose 响应对象,读取值:request

三、服务器端状态有哪些?分别的优缺点什么?

1.session对象:各个页面都可以使用,默认在服务器进程内的内存。可以保存复杂结构数据,各个客户端独立的对象,存储数据量大 session.Abandon()//取消会话 会触发session_End    2.appliction对象:各个客户端都可以共享的对象 可以保存复杂结构数据

3.数据库 持久保持,存储数据量最大

4.Cache 任意大小 可以根据需要设定 整个应用程序/所有用户 服务器端

三、数据绑定控件:

GridView 控件  使用模板

GridView支持以下功能:绑定至数据源控件,内置排序功能,内置更新和删除功能,内置分页功能,高亮显示所在行,全选和全不选功能

AutoGenerateColumns设置是否自动生成列

PageSize 设置每页显示多少条数据

AllowPaging 是否允许分页

AllowSorting 是否允许排序

DataSource指定数据源

DataKeyNames 设置主键

RowDataBound事件 在对行进行了数据绑定后激发

RowCommand事件 当GridView内生成事件时激发

PageIndexChanged事件 在GridView的当前索引已更改时激发

TemplateField字段

绑定中显示自定义内容的字段

有五种模板(标头、脚注、普通项、交替项、编辑模式)

RowDataBound事件:

呈现 GridView 控件之前,该控件中的每一行必须绑定到数据源中的一条记录。将某个数据行(用 GridViewRow 对象表示)绑定到 GridView 控件中的数据以后,将引发 RowDataBound 事件。这使您可以提供一个这样的事件处理方法,即每次发生此事件时都执行一个自定义例程(如修改绑定到该行的数据的值)。

GridViewRowEventArgs 对象将被传给事件处理方法,以便您可以访问正在绑定的行的属性。若要访问行中的特定单元格,请使用 GridViewRowEventArgs 对象的 Cells 属性。使用 RowType 属性可确定正在绑定的是哪一种行类型(标题行、数据行等等)。

RowCommand事件

在单击 GridView 控件中的按钮时,将引发 RowCommand 事件。这使您可以提供一个这样的事件处理方法,即每次发生此事件时执行一个自定义例程。

GridView 控件中的按钮也可调用该控件的某些内置功能。若要执行这些操作之一,请将按钮的 CommandName 属性设置为下表中的某个值。

DataList控件使用模板

DataList控件可以使用模板与定义样式来显示数据,最大的特点是一定要通过模板来定义数据的显示格式。

DataList控件的支持模板:

         AlternatingItemTemplate 交替项

         EditItemTemplate 编辑项

         FooterTemplate 脚注部分

         HeaderTemplate 页眉节

         ItemTemplate 内容和布局所要求的模板

         SelectItemTemplate 选定项

         SeparatorTemplate 分隔符

Bind(“字段名”):双向的,可以读写

Eval(“字段名”):单向的

Repeater 所有内容必须自己设置

各自特点和用法

四、验证控件

   微软提供的验证控件可以实现哪些验证?如何禁止验证

RequiredFieldvalidator 检查必填字段中是否含有值

CompareValidator 控件将在一个窗体字段中输入的值与一个固定的值或任何其他窗体字段中的值进行比较

RangeValidator 控件用于检查在字段中输入的值是否介于最大值与最小值之间

RegularExpressionValidator 控件用于检查字段值是否与给定的正则表达式相符

CustomValidator 控件用来为窗体创建自定义验证标准

ValidationSummary 控件概括窗体中生成的所有错误

Page.IsValid 属性检查页面中的所有验证控件是否均已成功进行验证

自定义验证控件

有三种方式禁用数据验证:

         1,在特定控件中禁用验证 将相关控件的CausesValidation 属性设置为false

         2,禁用验证控件 将验证控件的enabled 属性设置为false

         3,禁用客户端验证 将验证控件的enabledClientScript属性设置为false

五、用户控件

  什么是用户控件?有什么优点

用户控件是一种复合控件,其工作原理非常类似于asp.net网页,同时可以向用户控件添加现有的web服务器控件和标记,并定义控件的属性和方法,然后可以将控件嵌入asp.net网页中充当一个单元。

         优点:

         1,可以将常用的内容或者控件以及控件的运行程序逻辑设计为用户控件,然后可以在多个网页中重复使用该用户控件,从而省去很多重复性的工作,如网页上的导航栏,几乎每个网页都需要相同的导航栏,可以将其设计为一个用户控件,在多个网页中使用。

         2,如果网页内容需要改变,只需要修改用户控件中的内容,其他添加该用户控件的网页会自动随之改变,因此网页的设计以及维护变得简单易行。

六、web页面之间的传值方式有哪几种?

1,queryString 2,viewState 3,session 4,application 5,cookie6查询字符串

/*
以上内容为本人业余时间整理,部分内容来源网络,如有错误欢迎各位批评指正。


*/
原文地址:https://www.cnblogs.com/Lin267307031/p/2862615.html