Terry的学习笔记--ASP.NET MVC 4 HELLO WORLD添加控制器(Controller)

MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范。

模型:

  模型表示企业数据和业务规则。在MVC的三个部件中,模型拥有最多的处理任务。

视图:

  视图是用户看到并与之交互的界面,视图就是由HTML元素组成的界面。

控制器:

控制器接受用户的输入并调用模型和视图去完成用户的需求,所以当单击Web页面中的超链接和发送HTML表单时,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后再确定用哪个视图来显示返回的数据。

 

添加控制器(Controller)

         首先创建一个控制器类。在controller文件夹点击右键,选择add controller菜单

 

将控制器命名为"HelloWorldController",运用默认的模板” Empty MVC controller”

 

在IDE中刚刚添加的HelloWorldController.cs出现在了图示的位置

 

运用一下代码替换原代码

using System.Web;
using System.Web.Mvc;
 
namespace HelloWorld.Controllers
{
    public class HelloWorldController : Controller
    {
        //
        // GET: /HelloWorld/
 
        public string Index()
        {
            return "This is my <b>default</b> action...";
        }
 
        //
        // GET: /HelloWorld/Welcome/
 
        public string Welcome()
        {
            return "This is the Welcome action method...";
        }
    }
}

开始调试,在默认的url后添加helloworld,url的具体格式如图

 

 

MVC会根据url去选择调用哪个控制器。默认的选择器是根据以下规则进行选择:

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

url的第一部分对应控制器,就比如/HelloWord会对应到HelloWorldController类。url的第二部分对应控制器中的事件,/HelloWorld/Index会调用HelloWorldController类中的index事件。index为默认事件,所以当我们直接再查看/HelloWorld的时候会直接调用index事件。

接下来我们访问/HelloWorld/Welcome/,在这里HelloWorld是控制器的名字,Welcome是事件名

 

然后我们改写Welcome方法,让它可以接受url中传过来的值

public string Welcome(string name, int numTimes = 1) {
     return HttpUtility.HtmlEncode("Hello " + name + ", NumTimes is: " + numTimes);
}

这个方法将接受url中name和numTimes的值并显示在页面上

我们现在访问/HelloWorld/Welcome?name=scott&numTimes=4,显示的结果如下图

 

posted @ 2012-12-21 13:48  terryxym  阅读(329)  评论(0编辑  收藏  举报