ASP.NET MVC的请求处理流程

(1)用户打开浏览器,在地址栏输入某个网址URL并回车,浏览器便开始向该URL指向的服务器发送HTTP请求(一般是GET方式)。
(2)服务器端的网站服务系统(IIS)接收到该请求,先检查自己是否认识该类请求,如果认识就直接处理并发回响应,否则就将该类型的请求发给对应的HTTP处理程序(在此是ASP.NET MVC)。
(3)MVC路由系统收到请求后,根据HTTP请求的URL,把请求定向到对应的控制器。
(4)如果控制器是MVC内置的标准Controller,则启动Action机制;否则,根据自定义的控制器逻辑,直接向浏览器发回响应。
(5)MVC路由把HTTP请求定向到具体的Controller/Action,如果Action没有使用视图引擎,则根据自定义逻辑发回响应;否则返回ActionResult给视图引擎(WebForm或Razor),由视图引擎渲染呈现HTML,并发回浏览器。

今天就先写到这里,在接下来的文章中,会按照HTTP请求处理管道,依次带你读开源,敬请期待。

时间: 2024-10-10 08:41:35

ASP.NET MVC的请求处理流程的相关文章

asp.net MVC 的处理流程

之前把笔记都放在空间日志中隐藏起来,今天看到这句话:作为经常从网上索取免费资料的一员,要有回报的思想,也为了让更多的人少走些弯路,想想自己不能这么自私,所以把空间日志搬到博客园来.闲话不说,直接开始. asp.net MVC 分为主要的Controller .Action.以及Views 下面来分析Asp.net MVC的处理流程: Controller 负责将获取Model数据并将Model传递个View对象,通知View对象显示. 处理流程: 1.用户发起请求--->UrlRouting获取

Asp.Net构架(Http请求处理流程)、Asp.Net 构架(Http Handler 介绍)、Asp.Net 构架(HttpModule 介绍)

转载: HttpHaddler,HttpModule http://blog.csdn.net/jiuqiyuliang/article/details/18713451 http://www.cnblogs.com/Charles2008/archive/2009/02/17/1392101.html WCF rest http://blog.csdn.net/jiuqiyuliang/article/details/18713451 http://www.cnblogs.com/lanvig

ASP.NET MVC网站开发流程

在创建网站之前,最重要的就是先规划网站架构.页面等工作.具体步骤如下: 1.需求分析——网站架构与功能 规划网站页面:页面层次.名称及简介 规划网站功能:功能简述 2.Model数据模型规划 根据网站各功能设计模型类 3.Controller控制器架构规划 根据各功能类别设计相应控制器,如会员功能,则应有注册.写入页面.登录.运行与注销等. 4.View创建视图页面 创建主版页面 添加视图 5.添加数据库与购物车功能 添加信息功能类:设置连接参数. 添加导览属性:直接通过导览属性快速取得信息.

Asp.net mvc 框架揭秘之Asp.net +Mvc简介

1.什么是MVC? 介绍MVC之前说一下自治视图(Autonomous View):将UI界面的呈现.交互动作的捕捉响应.逻辑处理流程.数据存储等糅合在一起(如WebForm),我们将这种设计模式成为自治视图 自治视图的弊端: 视图和逻辑糅合在一起,不利于逻辑的复用 不利于对UI组件的调试 MVC是基于关注点分离的方针的架构模式,它将一个人机交互用户的功能分为Model.View.Controller三部分,它们各自具有自己的职责: Model:是对用于状态和业务功能的封装,是同时包含行为和数据

在ASP.Net MVC 中如何实现跨越Session的分布式TempData

Hi,guys!Long time no see! 1.问题的引出 我相信大家在项目中都使用过TempData,TempData是一个字典集合,一般用于两个请求之间临时缓存数据或者页面之间传递消息.也都知道TempData是用Session来实现的,既然是用Session来实现的,那么模式就是线程模式,这样的Session是没法用到分布式系统中的,那么在多台机器上部署,怎么做到Session在多台机器中共存,这就涉及到分布式存储.那该如何实现TempData的分布式存储?在讲如何实现时,先给大家

ASP.NET MVC+EF框架+EasyUI实现权限管理系列

http://www.cnblogs.com/hanyinglong/archive/2013/03/22/2976478.html ASP.NET MVC+EF框架+EasyUI实现权限管理系列之开篇 前言:博客又有一段时间没有更新了,心里感觉这段时间空空的,好像什么都没有学下,所以就想写博客,所以就有了这个系列,这里当然也要感谢大家了,因这个 项目我已经上传了,得到了很多网友的评价,也有好多人发邮件给我说这个框架容易出现问题,不能访问,这也是支持我写这个系列的动力,我将这个项目写成一个 系列

ASP.NET MVC+EF框架+EasyUI实现权限管理系列之开篇

原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列之开篇 前言:博客又有一段时间没有更新了,心里感觉这段时间空空的,好像什么都没有学下,所以就想写博客,所以就有了这个系列,这里当然也要感谢大家了,因这个项目我已经上传了,得到了很多网友的评价,也有好多人发邮件给我说这个框架容易出现问题,不能访问,这也是支持我写这个系列的动力,我将这个项目写成一个系列,可能要很长时间吧,但是我肯定会一直坚持,如果我哪里写的不好欢迎大家指出我们共同学习,而且我理解的也不是很透彻,所以我想在写这样一遍

念念不忘,ASP.NET MVC显示WebForm网页或UserControl控件

学习与使用ASP.NET MVC这样久,还是对asp.net念念不忘.能否在asp.net mvc去显示aspx或是user control呢?这个灵感(算不上灵感,只能算是想法)是来自前些天有写过一篇<多个视图结果显示于一个共用预览视图内>http://www.cnblogs.com/insus/p/3633298.html 其中有一个Render方法.以致想起以前开发asp.net时,也经常Render用户控件.即是说把网页经过Render之后,转换为是一串字符串. 那我们也一定可以把这串

ASP.Net请求处理机制初步探索之旅 - Part 5 ASP.Net MVC请求处理流程

好听的歌 我一直觉得看一篇文章再听一首好听的歌,真是种享受.于是,我在这里嵌入一首好听的歌,当然你觉得不想听的话可以点击停止,歌曲 from 王菲 <梦中人>: 开篇:上一篇我们了解了在WebForm模式下一个Page页面的生命周期,它经历了初始化Init.加载Load以及呈现Render三个重要阶段,其中构造了页面控件树,并对页面控件树进行了大量的递归操作,最后将与模板结合生成的HTML返回给了浏览器.那么,在ASP.NET MVC模式下,一个页面的生命周期又经历了哪些步凑呢?别急,本篇漫漫