ASP.NET MVC - 控制器

 

  • 控制器的角色
  • 控制器的发展历程
  • 示例应用程序:MVC Music Store
  • 控制器基础

 

控制器的角色

MVC模式中的控制器(Controller)主要负责响应用户的输入,并且在响应时修改模型(Model)。通过这种方式,MVC模式中的控制器主要关注的是应用程序流、输入数据的处理,以及对相应视图(View)输出数据的提供。

URL并不与存储在Web服务器磁盘上的文件有直接的对应关系,而是与控制器类的方法有关。

MVC提供的是方法调用的结果,而不是动态生成的页面。

 

示例应用程序:MVC Music Store

http://mvcmusicstore.codeplex.com/

 

创建第一个控制器

修改Index方法返回值为string,并且增加Browser方法,返回不同的字符串。

结论

  • 不需要做任何额外配置,浏览到/default/browser就可以执行DefaultController类中的Browser方法,这就是操作中的路由。
  • 尽管是使用VisualStudio工具来创建这个控制器类,但它的确是一个非常简单的类。判断一个类是否是控制器类的唯一方式,就是查看该类是否继承自System.Web.Mvc.Controller。
  • 已经利用一个控制器在浏览器中显示了文本-没有用到模型和视图。尽管在ASP.NET MVC中模型和视图非常有用,但是控制器才是真正的核心。每一个请求都必须通过控制器处理,然而其中有些请求是不需要模型和视图的。

控制器操作中的参数

修改Browser方法,检索从URL传过来的查询字符串。

利用方法HttpUtility.HtmlEncode来预处理用户输入。这样可以阻止用户用链接向视图中注入JavaScript代码或HTML标记。

 

 

摘录自:[美]Jon Galloway,Phil Haack,Brad Wilson等著,孙远帅,邹权译 ASP.NET MVC 4高级编程(第4版) [Professional ASP.NET MVC 4] [M]、清华大学出版社,2013、29-41、

posted @ 2016-10-09 13:35  guqiangjs  阅读(250)  评论(0)    收藏  举报