浅谈MVC基础

ASP.NET   MVC :UI层框架

让我们的web开发又回到了本质:请求,处理,响应

MVC本身是一种思想,将程序分成三个模块

Model:模型  广义的说法(包含DAL  BLL  MODEL)

View:视图    展示结果

Controller:控制器

MVC的思想是可以跨平台的,在很多的平台上都是实现了自己的MVC框架,JAVA平台上有一个Struts  ,Spring  MVC

程序员和美工的职责:将数据的获取和数据的展示分离

MVC的开发步骤:

  1. 创建控制器(在Controler文件夹下添加控制器)

约定:

控制器其实就是一个class,但需要满足三个条件:

  1. 命名规范,所有的控制器必须以Controller结尾
  2. 所有的控制器类必须实现IController接口(继承关系,控制器类---àController---àControllerBase-àIController接口
  3. 必须是非静态类

[注解]:一个控制器中可以包含多个方法。

  1. 设计控制器中具体的Action方法(处理请求)
  2. 为Action方法处理后添加视图

视图名称的约定:

视图名称和对应的Action方法的名称一样。

                                          

MVC的访问地址:

Http://localhost:端口号/控制器的名字/Action方法的名字/参数    (逻辑地址)

  在MVC中第一次引入了路由组件,进行了URL地址的拆分。路由规则可以由开发人员重新定义,即可以进行URL地址的重写。

Model的职责:负责业务处理

控制器中Action方法的职责:

  1. 接收用户请求
  2. 调用业务方法,获取业务处理结果
  3. 将处理后的数据指定视图展示并向视图传递

控制器中如何获取请求的参数?

方法一:直接通过Request对象获取。

方法二:在Action方法中设置一个FormCollection类型的参数接收请求数据。(只能接收表单post提交的参数)

方法三:直接在Action方法中设置和提交的参数名(name属性)一致的参数,MVC的底层会完成参数的自动装配。

【注】

每个控制器都对应在Views文件夹下有一个和控制器同名的子文件夹,在该文件夹下存放某个控制器对应的所有视图文件。

控制器中可以通过view(“视图名称”)来指定具体的视图,如果不指定则默认找和Action方法同名的视图。

Views文件夹下还有一个Shared文件夹,该文件夹专门定义所有控制器公共的视图(例如:处理错误页面。)

视图必须通过控制器才能访问,不能通过在浏览器中输入某个视图的URL地址直接访问。

控制器如何向指定视图展示数据?

控制器和视图直接有数据传输通道:

ViewData视图容器  key  value

原文地址:https://www.cnblogs.com/xrk1203/p/6297478.html