1、浏览器向服务器发送请求报文,服务器端的软件比如是IIS,接受请求
2、IIS通过aspnet_isapi.dll 这个程序集来请求FrameWork中的ASP.Net框架,这是对于集成模式
3、进入框架中,首先调用IsapiRunTime 的ProcessRequest();
4、然后再调用HTTPRuntime的 ProcessRequest(),在方法中创建Http上下文对象 HttpContext, 这个上下文对象很重要,因为在下面调用管道事件时,他是负责通信的。
5、然后再通过HttpApplicationFactory 这个工厂类,创建一个HttpApplication对象,
负责处理执行被请求的页面
6、调用HttpApplication对象的ProcessRequest(HttpContext Context)
然后执行asp.net的请求管道事件,依次调用24个事件
7、在第8个事件中创建被请求的页面对象index_aspx()
8、在第11个与12事件之间调用第8个事件中创建的页面对象的ProcessRequest(HttpContext Context) ,如果请求的是ashx页面,则执行程序员写的代码,里面会有context.Request
与context.Response 执行服务器的请求处理与响应处理,
如果请求的是aspx页面,则会执行页面生命周期(也是一堆的事件),其中会执行Page_Lode()
事件,然后才会执行生成前台html的方法,所以在aspx中,前台类是继承后台类的,
9、在第19个事件中根据HttpContext里面的ResPonse生成响应报文字符串,来响应给浏览器

下面附上整体运行的结构图:

最新文章

  1. latex公式编号
  2. HTML语法大全
  3. Exec in Job and NewQuery
  4. scala匿名函数
  5. unity tips
  6. c++,类的组合
  7. c#dalegate invoke及AsyncCallback使用
  8. jdk动态代理原理
  9. NUnit实战,第一个测试类,测试事件触发是否是并行的
  10. Carries SCU - 4437
  11. eclipse添加jar包进jar源码debug调试
  12. 更新下载库update绝对详解
  13. C++二分图匹配基础:zoj1002 FireNet 火力网
  14. permute
  15. javascript常用的操作
  16. java 虹软ArcFace 2.0,java SDK使用-进行人脸检测
  17. linux杂项
  18. 部署nexus服务
  19. python游戏编程——乌龟和鱼类场景编程
  20. 【BZOJ-3110】K大数查询 整体二分 + 线段树

热门文章

  1. C++学习3
  2. mybatis模板
  3. 求bat文件创建mysql数据库,并调用一个SQL文件的代码
  4. rman异机恢复(RAC双节点恢复到单节点)
  5. Codeforces 626C Block Towers「贪心」「二分」「数学规律」
  6. 打印从1到最大的n位数
  7. Hibernate——主键配置
  8. ASP.NET MVC 之 View 测试
  9. Unity协程(Coroutine)原理深入剖析(转载)
  10. 博客中 Flex4/Flash mp3音乐播放器实例 含演示地址