扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
3.1控制器的角色
创新互联长期为上千客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为乐清企业提供专业的成都网站建设、成都做网站,乐清网站改版等技术服务。拥有十多年丰富建站经验和众多成功案例,为您定制开发。
MVC模式中的控制器(Controller)主要用于响应用户的输入,并修改相应的模型(Module)。它主要关注应用程序流,对输入的数据进行处理,输出相应视图(View)。URL告知路由器去实例化哪个控制器,调用哪个方法,并为该方法提供需要的参数,然后由控制器的方法决定哪个视图,并随后对该视图进行渲染。
URL不与存储在WEB服务器磁盘上的文件有直接对应关系,而与控制器的一个方法有关。ASP.NET MVC实现对MVC模式中的前端控制器进行了改造,路由子系统在最前面,其次是控制器。
3.2控制器基础
3.2.1简单示例:Home Controller
使用Internet Application模板创建的项目包含两个控制器类:
1、HomeController----负责网站根目录下的Home Page和About Page
2、AccountController—负责对账户请求进行处理
在VS的项目中,展开/Controller文件夹,打开HomeController.cs文件,截图如下:
它是一个相当简单的类,继承了Controller基类,Index方法负责访问首页时进行处理,并调用Index视图进行输出。
经验总结:
1、不需要做任何额外配置,浏览到/Home/Index就可以执行IndexController类中的Index方法,这就是操作中的路由。
2、 控制器类继承了System.Web.Mvc.Controller.
3、控制器是MVC的核心,任何用户输入都需要经过控制器处理,由控制器决定调用哪个方法,返回视图或String
3.2.2控制器操作中的参数
控制器中方法参数可以通过以下两种方法进行传递:
1、通过URL中的查询字符串进行传递参数,如:
//Get:/Store/Browse?genre=Disco
Public string Browser(string genre)
{
Return genre;
}
2、将参数嵌入到URL中进行传递,如:
//GET:/Store/Details/5
Public string Detail(int id)
{
Return id.toString();
}
上述两者参数实现原理:路由器把URL映射成相应操作,包括传递的参数、调用的控制器、方法以及视图的输出。
总结:
控制器是MVC应用程序的指挥员,它精心紧密的编排用户、模块对象和视图的交互。它同时响应用户的输入,调用正确的模块,输出合适的视图,来响应用户的请求。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流