BS及Asp.Net原理,生命周期管道事件

BS原理

浏览器通过地址或链接访问到一个服务器,也就是发送了一个请求,在服务器端,有一个负责监听浏览器连接请求的套接字,有连接请求时就会创建一个专门的处理套接字,将请求的内容进行处理,响应给浏览器;

Asp.net运行原理

通过浏览器向asp.net网站的一个页面发送请求时,在服务器端首先是iis收到请求,iis一看是asp.net页面,直接就交给了asp.net isapi,它的主要任务就是安排asp.net_wp.exe处理请求,让它进行处理;

asp.net_wp.exe主要任务就是将请求交给一系列成为http管道的托管对象;而http管道的中有一部分叫HttpRuntime,它根据内部的请求,最终交由ProcessRequestInternal进行处理,就是PR方法,这个是重点

  1. 创建HttpContext实例;
  2. 对第一次请求进行初始化(EnsureFirstRequestInit);
  3. 创建HttpWriter实例;
  4. 通过调用HttpApplicationFactory.GetApplicationInstance创建HttpApplication实例。
  5. 调用HttpApplication实例的BeginProcessRequest异步处理请求
  6. 在处理管道的第8个方法时,创建请求的页面类对象,并转成IHttpHandler接口对象;
  7. 在11-12个事件的时候,执行页面类对象PR方法,在这里有很多的事情要处理;
  8. 一直到EndRequest这个方法,管道结束,有服务器响应报文给浏览器;

生命周期

  1. 初始化对象,一个页面最初应被正确的初始化
  2. 导入Viewstate数据,在LoadViewState这个事件中,所有的控件获得它们的第一个属性:Viewstate属性,这个属性用于判断这个页面是否访问完毕;
  3. LoadPostData处理Postback数据,服务器对页面上的控件提交的表单数据进行处理;
  4. 导入对象,在Load事件中,对象都实例化了(生命周期的最重要的一个过程);
  5. RaisePostBackChanged事件,要在所有的控件都被更新了以及Load事件完成后才进行的;
  6. 处理客户端PostBack事件

以上内容都是老师教的,没有出处,也可以说是随堂笔记

你可能感兴趣的:(BS及Asp.Net原理,生命周期管道事件)