Artech的MVC4框架学习——第一章初步认识ASP.NET MVC
前言:
Artech觉得掌握ASP.NET MVC具有三个层次。
第一层了解基本的编程模式,掌握Controller和View的定义方式,知道路由如何注册以及验证规则如何定义。
第二个层次要求我们对ASP.NET MVC框架本身从请求接收到响应回复的整个流程具有一个清晰的认识,这包括请求如何被路由、目标Controller如何被激活、Model元数据如何被解析、Action方法如何被执行,View如何呈现等。
第三层ASP.NET MVC本身是一个极具可扩展的开发框架,合理利用其扩展性可以解决很多开发中的实际问题,而掌握ASP.NET MVC的最高层次就是凭着对框架本身的运行机制的了解准确地找到相应的扩展点,并创建相应的扩展来解决我们遇到的问题。
Artech将基于ASP.NET MVC的编程分为两类,即“面向业务编程“和“面向框架的编程”。前者根据具体的业务逻辑定义Controller和设计View,这是大部分Web开发人员的主要工作;
后者则是为整个Web应用搭建一个框架,让最终的开发人员只需要关注与具体的业务逻辑,而让框架来完成所有与业务无关的部分。对于后者,我们可以充分利用ASP.NET MVC的扩展性,通过自定义的扩展来将非业务的功能自动“注入”(ioC)到业务逻辑的处理流程中 ,这样不仅可以提高开发效率还能提高开发质量。本书在剖析ASP.NET MVC框架运行机制过程中几乎列出了其所有的扩展点,并且通过实例演示的形式提供了很多实用的扩展。
第一章知识点:
第一解决 UI 、UI界面逻辑、业务逻辑 这些关注点的分离。从设计模式角度就是观察者模式,通过 controller 注册\订阅方式(注册相应事件完成,即基于事件机制)来实现 view和Model之间 关联。
第二MVC 的变体(前身) mvp (分 pv 和sc) 、mvvm、model2(java里面的东西有model1\model2)。最终mvc根据model2模式设计的。即:http请求被HttpModule拦截,进行相应验证,然后交给HttpHandler处理,进而激活目标Controller和执行相应Action,期间对model元数据解析,最终选择相应view转化成HTML呈现。
第三讲述IIS5、6、7与 Asp.net运行机制(详见:http://www.cnblogs.com/lei2007/archive/2013/06/08/3127192.html)。Asp.net采用极具扩展性管道式设计,HttpApplication是整个Asp.net管道核心,定义一系列事件在相应过程中被触发,最重要 HttpModule 和HttpHandler。而MVC实际上通过自定义HttpModule 和HttpHandler进行处理。
Artech的MVC4框架学习——第一章初步认识ASP.NET MVC的更多相关文章
- Artech的MVC4框架学习——第二章URL路由
总结:HttpModule 和HttpHandler是Asp.net管道的两个重要组件.请求最终处理通过HttpHandler完成.MVC就是通过名为MvcHandler自定义HttpHandler现 ...
- Artech的MVC4框架学习——第三章controller的激活
第一当目标controller的名称通过URL路由被解析出来后,asp.net mvc利用 ControllerBuilder 注册 ControllerFactory ,根据名称实现对目标contr ...
- Struts2框架学习第一章——Struts2概述
本章要点 — Web应用的发展 — Model 1和Model 2 — MVC思想 — MVC模式的优势 — 常用MVC框架及其特征 — Struts 1的基本结构及其存在的问题 — We ...
- Artech的MVC4框架学习——第七章Action的执行
概况:Action的执行不仅包含action方法的执行,还包含相关筛选器的执行. 第一基于线程池的请求,http请求称谓工作线程(p321),基于线程池优势:工作线程重用和工作线程数量的限制. 第二两 ...
- Artech的MVC4框架学习——第六章Model的验证
第一Model验证旨在为通过Model绑定生成参数进行检验以确保用户输入数据的有效性(p318) 第二Model验证分两种:服务器端(三种解决方案 p256)和客户端(ajax\jQuery) 第三服 ...
- Artech的MVC4框架学习——第五章Model的绑定
第一Model绑定本质就是为目标Action方法生成参数列表的过程,参数数据存在于http请求.请求的 URL .消息报头或主体中. 第二aciton 参数的元数据通过 ParameterDescri ...
- Artech的MVC4框架学习——第四章Model元数据的解析
总结: 第一Model元数据是针对 数据类型的一种表述信息. 第二Model元数据作用:控制数据类型本身及其成员,通过相应的特性,在view中 为绑定的数据(Model)实现模版化的html呈现. 第 ...
- Artech的MVC4框架学习——第八章View的呈现
总结:定义在controller中的action方法一般会返回actionResult的对象对请求给予 响应.viewResult是最常见也是最重要的ActionView的一种(p411).view模 ...
- Asp.Net MVC4 + Oracle + EasyUI 学习 第一章
Asp.Net MVC4 + Oracle + EasyUI 第一章 --操作数据和验证 本文链接:http://www.cnblogs.com/likeli/p/4234238.html 文章集合 ...
随机推荐
- Xcode 文档注释
首先要下载一个服务:[下载地址]这是一个老外写的工作流,解压缩,然后双击,安装一下, 选择xcode —> services —> services perference 安装完就会在右边 ...
- Fedora更改密码
开机进入单用户模式 按e --->进入编辑界面之后,在“rhgb quiet”字符前面,输入“single”加空格,回车-->返回上一步中启动命令行菜单. 按 b ---> pas ...
- [Learn AF3]第一章 如何使用App Framework 3.0 构造应用程序
af3的变化非常大.参见[译]Intel App Framework 3.0的变化 一.应用需要引用的js脚本: af3中不在自己实现dom选择器,而是选择基于jquey或兼容jquery的库如zep ...
- Thinkphp5笔记四:设置模板路径
默认的模板路径在模块/view文件里面.如果你觉得这样不太方便管理,想要把他设置Template目录下,可以这样做. 模板参数 ,能够影响的它参数,是当前模块下config.php template- ...
- vim 编辑器常用命令
vi 常用命令行 1.vi 模式 a) 一般模式: vi 处理文件时,一进入该文件,就是一般模式了. b) 编辑模式:在一般模式下可以进行删除,复制,粘贴等操作,却无法进行编辑操作.等按下‘i,I,o ...
- Vue-router路由判断页面未登录跳转到登录页面
router.beforeEach((to, from, next) => { if (to.matched.some(record => record.meta.requireAuth) ...
- EF跨库查询,DataBaseFirst下的解决方案
出于各种原因,有时需要跨数据库访问某些数据表,有同学已经给出了解决方案,比如 http://blog.csdn.net/hanjun0612/article/details/50475800 已经解 ...
- 关于HTML标签嵌套的问题详解
先说基础,HTML标签有两类: 1.块级元素 div.h1~h6.address.blockquote.center.dir.dl.dt.dd.fieldset.form.hr.isindex.men ...
- C#------Aspose的License文件
Aspose官网: https://docs.aspose.com/display/cellsnet/Home 下载地址: http://vdisk.weibo.com/s/uoya0tRiZNf0X ...
- @ControllerAdvice -- 处理异常示例
Class : SessionInterceptor package com.estate.web.filter; import javax.annotation.Resource; import j ...