MVC学习笔记一

主要是为了复习昨天所学习到的MVC的基础内容,因为昨天还在申请博客,所以今天补上。

目前主要学习资料是《ASP.NET MVC4 Web 编程》 

 

MVC里的URL重写是让很多新手摸不着头脑的地方。

下边的图清楚的解释了在MVC项目中,一个请求的运转周期。

不像我们以前直接到文件的地址一样的路径,可以直接指向一个文件。

而MVC架构的框架决定了他不单单是那样的,不然就无法做到前台文件和逻辑代码的分离。

上图说明:

  Routing路由

  这个东西并不在MVC框架的大框架里,但却依然是MVC框架中请求的核心部分。他是一个请求中URL重定向的主要途径,用来分配与指导你所请求的地址应该去哪里,应该去找哪一个控制器。他有一个路由表,表里记录的就是这些地址,而匹配上了之后,就会有相应的控制器被找到,继而进行下一步,进入控制器。

  Controller控制器

  他的任务是该做什么,却不是该怎么做。这是一个很重要的概念。我们程序的主要逻辑就是放在这里边的。他是MVC的一大特色。

  控制器文件放在项目根目录下的Controllers文件夹中,命名规范为 指向的文件夹名字+Controller.cs  譬如 homeController.cs 指向的就是 /Views/home文件夹,其管理的就是该文件夹下的文件。

  如果home文件夹下有文件index.aspx,那么在homeController.cs中就必须有一个方法名字叫index,一般返回值都是ActionResult类型的,也可以是空返回值void。ActionRequest类型中,也可以是一些有其他需求的类型,譬如302重定向。那么就可以使用 return Redirect(string Url)来实现。 Redirect(string Url)方法返回值是RedirectResult,该类型是继承于ActionReturn的,所以可以直接使用。

  另外,Controller中的操作方法,譬如index()方法,是可以接受参数的,参数名字应该是在打开index.aspx页面时传入的参数,譬如 id 或者其他参数,在规定的时候,直接是给定参数类型的,譬如index(int id),这就致使在接收参数的时候,如果传入的不是一个int类型的数值,那么方法的参数将会是一个

 

 

可以节省编程人员在编写业务逻辑时的诸多旁支代码,譬如处理传入值的安全验证问题。

 

 

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。