Ch02 从零开始实例学习3
提纲:----------------------------
------------------------------------
演练2-3:添加控制器
原文链接:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-controller
1. 右击Controllers文件夹,选择“添加控制器”,并命名为“HelloWorldController”。
![]()


2. 修改新建的控制器代码
using System.Web;
using System.Web.Mvc; namespace MvcMovie.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...";
}
}
}
3. 运行查看结果
控制器的Index和Welcome方法将返回HTML字符串。运行时在地址栏中加上“HelloWorld”。
这是通过用路由来控制激活哪个方法,默认的路由逻辑格式为
/[Controller]/[ActionName]/[Parameters]
因为默认路由中指定了Index方法,所以在路由中不需要加上。但如果需要访问Welcome方法,地址栏需输入 http://localhost:xxxx/HelloWorld/Welcome。
4. 修改Welcome方法代码
public string Welcome(string name, int numTimes = ) {
return HttpUtility.HtmlEncode("Hello " + name + ", NumTimes is: " + numTimes);
}
5. 小结
目前为止,我们只练习了MVC的“VC”部分,即View和Controller,控制器直接返回HTML。通常我们希望控制器返回独立的视图,我们将以后介绍。
知识点2-3:控制器的职责
控制器负责处理浏览器来的所有要求,接受输入(通过各种资源,如表单数据或URL中的信息),并决定响应什么属性给浏览器,但它并不负责决定属性应如何显示,仅响应特定形态的属性给ASP.NET MVC框架,最后才由ASP.NET MVC框架依据响应的形态来决定如何响应属性给浏览器。
知识点2-4:控制器的类别与方法
1.Controller本身就是一个Class,其中有许多Method,这些method中只要是public method就会被视为是一个Action,通过action接收客户端传来的要求与决定响应的View。
2.编写Controller的基本要求如下。
using System.Web.Mvc;
namespace MvcApplication1.Controllers
{
public class Default1Controller : Controller
{
public ActionResult Index()
{
ViewBag.Message = "修改此模板以快速启动你的ASP.NET MVC应用程序。";
return View();
}
}
}
(1)Controller必须为public。
(2)Controller名称必须以Controller结尾。
(3)必须继承自ASP.NET MVC内建的Controller类型,或继承IController的自定义类型。
(4)所有action必须为public,任何非公开的方法如声明为private或protected的方法都不会被视为一个action。
Ch02 从零开始实例学习3的更多相关文章
- Ch02 从零开始实例学习6
演练:理解Edit方法和Edit视图 原文链接:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/exam ...
- Ch02 从零开始实例学习5
演练:添加模型 原文链接:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-model ...
- Ch02 从零开始实例学习4
演练2-4 添加视图 原文链接:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-vi ...
- Week16(12月23日):复习
Part I:提问 =========================== 1.声明强类型视图时,使用关键字( ) A.ViewBag B.model C.Type D.Tit ...
- Week1(9月12日):很激动的第一次课
Part I:课程介绍 =========================== 1. 学时 8*16=128 2. 时间 周二1234,周五1234 3. 地点 E307 4. 考试方式 笔试+上机 ...
- Week2(9月16日):动手做个简单的例子
Part I:提问 =========================== 1.什么是ASP.NET MVC? 2.MVC的英文? 3.什么是模型? 4.什么是控制器? 5.什么是视图? 6.ASP ...
- Week2(9月19日):增加一个CodeFirst的例子来说明
Part I:提问 =========================== 1.上堂课中我们使用了()数据库,它是()可部署的,只需要将相应的()文件添加到应用程序的()文件夹,就可以使用了,该数据 ...
- Week3(9月23日):例子更Powerful更完整了,哇咔咔
Part I:提问 =========================== 1.控制器中动作方法的返回类型有哪些? 2.如果控制器代码如下,请问浏览器中如何输入什么路由访问? public clas ...
- Week3(9月26日):做完后,总结下
Part I:提问 =========================== 1.linq小回顾 (1)Movies控制器中Index动作,显示全部电影信息. public ActionResult ...
随机推荐
- CSS3-旋转齿轮
CSS3-旋转齿轮 查看DEMO 通过 CSS3,我们能够创建动画,这可以在许多网页中取代动画图片.Flash 动画以及 JavaScript. 先来认识一下css3的animation animat ...
- 多线程下载工具-Axel
1.安装: apt-get install axel 2.用法: axel 参数 文件下载地址 3.常用参数: -n 指定线程数 -o 指定文件存储位置(如不指定,默认存在当前位置(pwd)) -q ...
- 转: seajs知识点与cmd规范
在比较之前,我们得先来了解下什么是AMD规范?什么是CMD规范?当然先申明一下,我个人也是总结下而已,也是网上看到的资料,自己总结下或者可以说整理下而已,供大家更深入的了解!因为我们都知道 AMD规范 ...
- jQuery Ajax异步处理Json数据详解
先我们来看一个官方的实例使用 AJAX 请求来获得 JSON 数据,并输出结果: $("button").click(function(){ $.getJSON("dem ...
- Treasure Exploration(二分最大匹配+floyd)
Treasure Exploration Time Limit: 6000MS Memory Limit: 65536K Total Submissions: 7455 Accepted: 3 ...
- C++之字符串分割函数split
c++之字符串分割: /* *c++之字符串分割: */ #include <iostream> #include <string> #include <vector&g ...
- sqlserver 三种恢复模式
sql server数据库提供了三种恢复模式:完整,简单和大容量日志,这些模式决定了sql server如何使用事务日志,如何选择它要记录的操作,以及是否截断日志.截断事务日志是删除己执行事务并把该日 ...
- ASP.NET站点安全
<configuration> <appSettings/> <connectionStrings> <add name="MyBookShop&q ...
- iOS 之 UINavigationController 记录
有一阵子没有写随笔,感觉有点儿手生.一个多月以后终于又一次坐下来静下心写随笔,记录自己的学习笔记,也希望能够帮到大家. 废话少说回到正题,UINavigationController是IOS编程中比较 ...
- jsp字段判空
是对象吧String jsp的写法 <% if(str == null) { %> str is null <% } else { %> str not null <% ...