Asp.Net MVC4入门指南(2):添加一个控制器

MVC表明: 模型-视图-控制器 。MVC是一个架构良好而且易于测试和易于维护的开发模式。基于MVC模式的应用程序包含:html

Models: 表示该应用程序的数据并使用验证逻辑来强制实施业务规则的数据类。浏览器

Views: 应用程序动态生成 HTML所使用的模板文件。架构

Controllers: 处理浏览器的请求,取得数据模型,而后指定要响应浏览器请求的视图模板。mvc

本系列教程,咱们将覆盖全部这些概念,并告诉您如何使用它们来构建应用程序。asp.net

首先,让咱们建立一个控制器类。在解决方案资源管理器中,用鼠标右键单击控制器文件夹,而后选择“添加控制器“工具

clip_image001

命名新的控制器为“HelloWorldController”。保留默认的模板为“Empty MVC controller”,并单击“ 添加“。学习

clip_image002

请注意,在解决方案资源管理器中会建立一个名为HelloWorldController.cs的新文件。该文件会被IDE默认打开。测试

clip_image003

用下面的代码替换该文件中的内容。spa

?.net

在这个例子中控制器方法将返回一个字符串的HTML。本控制器被命名HelloWorldController代码中的第一种方法被命名为Index。让咱们从浏览器中调用它。运行应用程序(按F5或CTRL + F5)。在浏览器的地址栏中输入路径“HelloWorld“。(例如,在下面的示例中: http://localhost:1234/HelloWorld)页面在浏览器中的表现以下面的截图。在上面的方法中,代码直接返回了一个字符串。你告诉系统只返回一些HTML,系统确实这样作了!

clip_image004

根据传入的URL,ASP.NET MVC调用不一样的控制器类(和它们之中不一样的操做方法)。使用ASP.NET MVC默认的URL路由逻辑格式,以肯定哪些代码会被调用:

/[Controller]/[ActionName]/[Parameters]

第一部分的URL肯定那个控制器类会被执行。所以 /HelloWorld映射到HelloWorldController控制器类。第二部分的URL肯定要执行控制器类中的那个操做方法。所以 /HelloWorld/Index,会使得HelloWorldController控制器类的Index 方法被执行。请注意,咱们只须要浏览 /HelloWorld路径,默认状况下会调用Index方法。若是没有明确的指定操做方法,Index方法会默认的被控制器类调用。

浏览http://localhost:xxxx/HelloWorld/Welcome。Welcome方法会被运行并返回字符串:"This is the Welcome action method...”。 默认的MVC映射为/[Controller]/[ActionName]/[Parameters] 对于这个URL,控制器类是HelloWorld,操做方法是Welcome,您尚未使用过URL的[Parameters] 部分。

clip_image005

让咱们稍微修改一下这个例子,以即可以使用URL传递一些参数信息给控制器类(例如, /HelloWorld/Welcome?name=Scott&numtimes=4)。改变您的Welcome 方法来包含两个参数,以下所示。须要注意的是,示例代码使用了C#语言的可选参数功能,numTimes参数在不传值时,默认值为1。

?

运行您的应用程序并浏览此URL(http://localhost:xxxx/HelloWorld/Welcome?name=Scott&numtimes=4。你能够对参数name 和numtimes 尝试不一样的值。 ASP.NET MVC model binding system 会自动将地址栏中URL里的 query string映射到您方法中的参数。

clip_image006

在这两个例子中,控制器一直在作着MVC中“VC”部分的职能。 也就是视图和控制器的工做。该控制器直接返回HTML内容。一般状况下,您不会让控制器直接返回HTML,由于这样代码会变得很是的繁琐。相反,咱们一般会使用一个单独的视图模板文件来帮助生成返回的HTML。让咱们来看看下面咱们如何能作到这一点吧。

控制器是MVC中的重要组成部分,有了本节知识的学习,相信你们会更加深刻地理解MVC。那么在MVC开发过程当中,除了以上知识以外,还能够借助哪些工具呢?ComponentOne Studio ASP.NET MVC 是一款针对 MVC 平台的控件包,它与 Visual Studio 无缝集成,彻底与 MVC6 和 ASP.NET 5.0 兼容,将大幅提升工做效率。

--------------------------------------------------------

译者注:

本系列共9篇文章,翻译自Asp.Net MVC4 官方教程,因为本系列文章言简意赅,篇幅适中,从一个示例开始讲解,全文最终完成了一个管理影片的小系统,很是适合新手入门Asp.Net MVC4,并由此开始开发工做。9篇文章为:

1. Asp.Net MVC4 入门介绍

・ 原文地址:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/intro-to-aspnet-mvc-4

・ 译文地址:http://www.cnblogs.com/powertoolsteam/archive/2012/11/01/2749906.html

2. 添加一个控制器

・ 原文地址:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-controller

・ 译文地址:http://powertoolsteam.blog.51cto.com/2369428/1048056

3. 添加一个视图

・ 原文地址:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-view

・ 译文地址:http://powertoolsteam.blog.51cto.com/2369428/1051379

4. 添加一个模型

・ 原文地址:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-model

・ 译文地址:http://powertoolsteam.blog.51cto.com/2369428/1091907

5. 从控制器访问数据模型

・ 原文地址:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/accessing-your-models-data-from-a-controller

・ 译文地址:http://powertoolsteam.blog.51cto.com/2369428/1114401

6. 验证编辑方法和编辑视图

・ 原文地址:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/examining-the-edit-methods-and-edit-view

・ 译文地址:http://powertoolsteam.blog.51cto.com/2369428/1125390

7. 给电影表和模型添加新字段

・ 原文地址:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-new-field-to-the-movie-model-and-table

・ 译文地址:http://powertoolsteam.blog.51cto.com/2369428/1140334

8. 给数据模型添加校验器

・ 原文地址:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-validation-to-the-model

・ 译文地址:http://powertoolsteam.blog.51cto.com/2369428/1147449

9. 查询详细信息和删除记录

・ 原文地址:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/examining-the-details-and-delete-methods

・ 译文地址:http://powertoolsteam.blog.51cto.com/2369428/1149311

10.第三方控件Studio for ASP.NET Wijmo MVC4 工具应用

・ 地址:http://powertoolsteam.blog.51cto.com/2369428/1196469

相关文章
相关标签/搜索