zoukankan      html  css  js  c++  java
  • ASP.NET MVC控制器作用

    3.1控制器的角色

           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应用程序的指挥员,它精心紧密的编排用户、模块对象和视图的交互。它同时响应用户的输入,调用正确的模块,输出合适的视图,来响应用户的请求。

  • 相关阅读:
    使用 Eclipse 调试 Java 程序的 10 个技巧
    oracle9i,10g再谈优化模式参数问题.
    oracle 索引
    解决IE不能在新窗口中向父窗口的下拉框添加项的问题
    获取文档的尺寸:利用Math.max的另一种方式
    揭开constructor属性的神秘面纱
    测试杂感:Windows8也许需要Account Hub
    探索式测试:探索是为了学习
    一次有教益的程序崩溃调试 (下)
    软件测试读书列表 (2013.8)
  • 原文地址:https://www.cnblogs.com/ljf10223063/p/MVC.html
Copyright © 2011-2022 走看看