.NET MVC学习笔记整理
一、MVC请求处理流程 1. 用户通过浏览器发出HTTP请求,URL与预设的路由规则进行匹配。 2. 路由系统解析URL,确定对应的Controller(控制器)和Action(操作方法)。 3. .NET框架实例化Controller对象,并调用相应的Action方法。 4. Action方法通常会与Model(模型)交互,获取或更新数据,并将数据传递给View(视图)。 5. Action方法返回一个ActionResult对象,表明要呈现的视图或执行的动作。 6. ActionResult的ExecuteResult()方法被调用,找到相应的View并由ViewEngine进行渲染,最后返回给客户端。
二、Controller的主要属性与方法 - ActionInvoker:处理动作的方法调用。 - AsyncManager:支持异步操作。 - Binders:管理模型绑定器,用于将HTTP请求数据映射到模型对象。 - ControllerContext:提供控制器的上下文信息,包括请求、响应和路由数据。 - HttpContext:访问与当前HTTP请求相关的各种信息,如请求头、查询字符串等。 - ModelState:存储模型状态,用于验证模型数据。
三、View View是用户界面部分,负责展示数据。它通常由Razor语法编写,接收Controller传递的数据并生成HTML响应。
四、Controller, Action, View的命名约定 通常,Controller类名与路由中的Controller部分对应,Action方法名与URL中的Action部分对应,View文件名默认为Action名,位于Controller对应的视图目录下。
五、ACTION Action是Controller中的方法,负责处理特定的用户请求,返回视图或执行其他操作。
六、Bootstrap 4 Bootstrap是由Twitter开发和维护的前端框架,用于快速构建响应式和移动优先的网站。不同版本之间可能存在CSS类名的差异,开发时需要注意兼容性问题。
七、Razor视图引擎 Razor是一种轻量级的视图引擎,用于在.NET MVC中编写视图。它允许开发者混合C#代码和HTML,以声明式方式生成HTML输出。
八、JSON资料格式与Web API JSON是一种轻量级的数据交换格式,常用于Web API的数据传输。Web API是.NET Framework的一部分,用于构建RESTful服务,返回JSON或XML格式的数据。
九、HTML Helper HTML Helper是.NET MVC中的一类辅助方法,帮助在View中生成HTML元素,提高代码可读性和可维护性,例如创建表单。
十、响应式设计 设计适合网页端和移动端的应用时,应采用响应式布局,使网站能在不同设备上自适应显示。
十一、Routing路由 Routing系统是.NET MVC的核心组件,根据URL模式将请求映射到Controller和Action,实现URL与应用程序逻辑的解耦。
十二、MVC验证与过滤体系:Action Filter Action Filter可以应用于Controller或Action,用于执行验证、缓存、日志记录等预处理或后处理任务。例如,Authorize Filter用于身份验证和授权。