[老贴]《asp.net高级编程》读书笔记(1)

来源:互联网 发布:电工制图软件下载 编辑:程序博客网 时间:2024/04/29 19:56
    看了《asp.net高级编程》的前158页,下面是我的读书笔记:
1.asp.net采用新的基于事件的编程模型,网页是完全编译的,使用丰富的服务器端控件,是.net framework的一部分。

2.可以把一个普通的html控件变成服务器控件,只要将runat=”server”加入。例如:<input id=”FirstName” type=”text” runat=”server”>,这就可以在服务器端通过id引用这个控件,string firstName = FirstName.Text;

3.asp.net支持多语言开发,基于服务器端处理,提供丰富的web表单控件。在发送给客户端的html代码中,有一个隐藏的输入字段,包含了服务器控件的状态,称为ViewState。

4,服务器控件分为:1)html服务器控件:html元素对应的服务器元素。2)web表单控件:映射了单个的html元素。3)列表控件:映射了产生网格或类似网格布局的html元素组

4)多功能控件:可产生丰富页面内容且压缩复杂的功能性,同时输出纯html 或 html +javascript 5)验证控件:不可见的,但允许进行服务器端和客户端表单验证。6)移动控件:
可由访问页面的设备来输出html或wml

5.asp.net有代码内联和代码表示分离两种方式供选择。第一种,代码保存在asp.net页面中,但并不和html混合,而是将代码和内容分为两个部分

6.Web控件在页面发送过程中会保留其内容,可以通过Page.IsPostBack属性判断页面是否第一次加载或是返回数据给服务器了。Asp.net 网页在后台被转换为类并编译为一个dll,

7.当一个网页第一次被请求时,Asp.net会将网页进行jit编译将其编译为一个装配件,该装配件包含一个类,该类由System.Web.UI.Page类派生,每次有对此页面的请求时就实例化该类来响应请求。在网页显示前其依赖性会受检查,若有变化,就删除装配件,并同时创建一个新的装配件,

8.Page_Init:当页面初始化时引发该事件 Page_Load:当加载页面时发生 Page_Unload:页面从内存中卸载。Page_Init和Page_Load的区别在于,Page_Load可以确保完全加载控件,而在Page_Init中可以访问控件,但ViewState不会加载,各控件拥有默认值,而不是发回服务器的过程中设置的任何值。

9.当web表单从服务器端被请求时,构成页面的组件被编译为一个组件,它包括:1)所请求的.aspx文件 2)包含该页面代码的.net类 文件。3)该页面使用的用户控件。这个编译成的单元是个Page类派生的动态生成的类。页面实际是一个输出html的可执行对象,

10,Page类的PreRender事件在信息写至客户端前引发,AbortTransaction事件在取消页面参加的事务处理时引发,CommitTransaction事件在确认页面参加的事务处理时引发,Error事件在出现未处理的异常引发

11,Request和Response是两个很重要的类,封装了请求和响应功能的很多属性和方法

12,我对asp.net处理客户请求的理解:客户通过浏览器发出httprequest,若是页面第一次被请求,asp.net通过jit编译将页面编译为dll,其内含此页面类,在实例化该类,在网页显示前,检查依赖性,若改变则删除装配件,重新编译,然后发出httpresponse响应客户的请求

13.Asp.net采用的是通过无状态的http请求进行服务器往返执行,即用户在客户端触发事件,在服务器端处理事件。页面在服务器的两次请求间存储VierState,它包含了页面上的控件的状态,

14,服务器处理web form页面时有四个步骤:1)配置阶段 2)事件处理 3)显示 4)清除
原创粉丝点击