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 ...
随机推荐
- python笔记之字符串
列表,元组,字符串的相互转换: 将字符串转换为序列和元组: >>> s="hello" >>> list(s)['h', 'e', 'l', ' ...
- github每次push都需要密码以及用户名的解决办法
git remote set-url origin git@github.com:你的账户/项目名称.git就可以直接git push origin master了.
- ORA-00031: session marked for kill 标记要终止的会话
原文转载处:http://moonsoft.itpub.net/post/15182/203828 一些ORACLE中的进程被杀掉后,状态被置为"killed",但是锁定的资源很长 ...
- 破解企业QQ对个人QQ登陆的限制(原创)
运行系统:WIN7 破解时间:2014-02-19 破解思路:自从2013-11-11的1.85版企业qq更新后,网上流传的破解方法(运行文件BeatQQEIM.bat)已经不起作用了,可以同时登陆, ...
- 详解Spring
Spring SSH框架中Struts2:是基于Web层,Hibernate:是基于持久化的,Spring:业务层,管理bean,它是一个容器,List,map, Set这里的内容,是适合已经学过了S ...
- MVC action返回partialView前台html 拼接
//后台 [HttpPost] public ActionResult GetNextLazyLoadProduct(int[] productIdList) { ...
- DataTable的属性与使用方式
一.DataTable简介 (1)构造函数 DataTable() 不带参数初始化DataTable 类的新实例. DataTable(string t ...
- ARM异常---一个DataAbort的触发过程:
一个DataAbort异常的触发过程://////////////////////////////xxxx.inc_STACK_BASEADDRESS EQU 0x33ff8000_MMUTT_STA ...
- Group DataList
一,效果图. 二,源代码. <!DOCTYPE html><html><head> <meta charset="UTF-8"> & ...
- Hibernate 多对一
Hibernate的many-to-one 关联. 具体看配置文件: <?xml version="1.0"?> <!DOCTYPE hibernate-mapp ...