数迹学——Asp.Net MVC4入门指南(2):添加一个控制器
自嘲一下。。。。。。万事还是得从官方的入门开始
由于找不到适合新新手的MVC入门实例所以回过头来做一下微软的 《Asp.Net MVC4入门指南》。
只有把自己放在太阳下暴晒,才知道自己有多菜!
新手心得,万一有被看到,请指正
一、Action方法的访问 (实质上就是调用某个Cotroller中的某个方法,这个方法可能有参数的)
namespace MVCMovie.Controllers
{
public class HelloWorldController : Controller
{
//
// GET: /HelloWorld/ 从这里可以看到是一Get方式进行的访问
public string Index()
{
return "This is my <b>default</b> action methord";
}
//
//GET: /HelloWorld/Welcom 从这里可以看到是一Get方式进行的访问
public string Welcome()
{
return "This is the welcome action methord";
}
}
}
一个HellowordController中有两个action(方法),通过/Control/action的形式去访问这两个方法,可以看到return后的字符内容
图片1
访问地址为/HelloWorld/ 这里只有Controller的名字 没有Index这个方法,是因为路由中默认访问Index方法
其实就是/HelloWord/Index
图片2
对于不是路由中映射的默认方法的访问,访问格式为 /Controllername/actionname
所以访问welcome方法,访问地址为/HelloWorld/Welcome
图片3

看到这个图了吗?Action方法也显示数据的,比如图1,图2,图片3中的Table就更说明了问题了
不一定要放入View中(当然很不方便)
这说明了MVC就是代码的拆分
怎么拆分呢?微软的观点如下:
MVC代表: 模型-视图-控制器 。MVC是一个架构良好并且易于测试和易于维护的开发模式。
基于MVC模式的应用程序包含:
· Models: 表示该应用程序的数据并使用验证逻辑来强制实施业务规则的数据类。
· Views: 应用程序动态生成 HTML所使用的模板文件。
· Controllers: 处理浏览器的请求,取得数据模型,然后指定要响应浏览器请求的视图模板。
图片3的代码如下:
Y4X}QT)893UD.png)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
namespace MVCMovie.Controllers
{
public class HelloWorldController : Controller
{
//
// GET: /HelloWorld/
public string Index()
{
return "This is my <table border=1><tr><td><b>default</b></td></tr></table> action methord";
}
//
//GET: /HelloWorld/Welcom
public string Welcome()
{
return "This is the welcome action methord";
}
}
}
二、GET方式与action的交互(传递参数)
/[Controller]/[ActionName]/[Parameters]
访问地址:/HelloWorld/Welcome?name=Scott&numtimes=4
代码:
namespace MVCMovie.Controllers
{
public class HelloWorldController : Controller
{
//GET: /HelloWorld/Welcom
public string Welcome(string name, int numTimes = 1) //numTimes如果传入的值不符合要求,或者没有传入则为1
{
return HttpUtility.HtmlEncode("Hello " + name + ", NumTimes is: " + numTimes);
}
}
}
数迹学——Asp.Net MVC4入门指南(2):添加一个控制器的更多相关文章
- 数迹学——Asp.Net MVC4入门指南(5):从控制器访问数据模型
MovieController中的方法Index()代码,初认识,应该有很多理解错误的地方,暂时这么记忆吧,待随后修改 Index()代码: @model IEnumerable<MVCMovi ...
- 数迹学——Asp.Net MVC4入门指南(4):添加一个模型
一.添加模型类 二.添加MovieDBContext类,连接数据库 DbContext类继承自 System.Data.Entity; 负责在数据库中获取,存储,更新,处理实例 MovieDBCont ...
- 数迹学——Asp.Net MVC4入门指南(3):添加一个视图
方法返回值 ActionResult(方法执行后的结果) 例子1 public ActionResult methordName() { return "string"; } 例 ...
- Asp.Net MVC4.0 官方教程 入门指南之四--添加一个模型
Asp.Net MVC4.0 官方教程 入门指南之四--添加一个模型 在这一节中,你将添加用于管理数据库中电影的类.这些类是ASP.NET MVC应用程序的模型部分. 你将使用.NET Framewo ...
- Asp.Net MVC4.0 官方教程 入门指南之三--添加一个视图
Asp.Net MVC4.0 官方教程 入门指南之三--添加一个视图 在本节中,您需要修改HelloWorldController类,从而使用视图模板文件,干净优雅的封装生成返回到客户端浏览器HTML ...
- 【翻译转载】【官方教程】Asp.Net MVC4入门指南(2):添加一个控制器
2. 添加一个控制器 · 原文地址:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-c ...
- 【部分补充】【翻译转载】【官方教程】Asp.Net MVC4入门指南(4):添加一个模型
4. 添加一个模型 · 原文地址:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-mo ...
- 【翻译转载】【官方教程】Asp.Net MVC4入门指南(3):添加一个视图
3. 添加一个视图 · 原文地址:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-vi ...
- 【翻译转载】【官方教程】Asp.Net MVC4入门指南(1): 入门介绍
1. Asp.Net MVC4 入门介绍 · 原文地址:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/ ...
随机推荐
- spark1.5 scala.collection.mutable.WrappedArray$ofRef cannot be cast to ...解决办法
下面是我在spark user list的求助贴,很快就得到了正确回答,有遇到问题的同学解决不了也可以去上面提问. I can use it under spark1.4.1,but error on ...
- 能源项目xml文件 -- app-dubbo.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...
- PostgreSQL的时间/日期函数使用 转
http://www.cnblogs.com/mchina/archive/2013/04/15/3010418.html
- 2016.9.18 --- Shenyang ol
1001 Resident Evil 1002 List wants to travel 1003 hannnnah_j’s Biological Test 1004 Mathematician QS ...
- start with connect by prior 递归查询用法
这个子句主要是用于B树结构类型的数据递归查询,给出B树结构类型中的任意一个结点,遍历其最终父结点或者子结点. 先看原始数据: create table a_test ( parentid ), sub ...
- linux 基本命令操作
1.ls 命令 ls -a 列出所有文件,包括隐藏文件 ls -l 列出文件详细信息 ls -r 列出所有文件包括文件夹 查询具体文件可以在命令后面加 |grep 要匹配的字符串,方便我们查找, ...
- Liquid基础语法
Output输出 简单输出示例: Hello {{name}} Hello {{user.name}} Hello {{ 'tobi' }} Advanced output: Filters 高级输出 ...
- jquery事件代理
在jQuery中,事件代理是指:把事件绑定到父级元素,然后等待事件通过DOM冒泡到该元素时再执行. 在事件侦听过程中有两种触发事件的方式:事件捕获和事件冒泡.事件冒泡更快,效率更高. 事件捕获:事件在 ...
- oracle 11g ORA-12541: TNS: 无监听程序 (DBD ERROR: OCIServerAttach)
From :http://www.cnblogs.com/wangyt223/archive/2012/12/11/2812931.html em无法浏览,同时监听起不来.同时他的监听服务还是正常的, ...
- OMG点菜系统
算是一个项目吧,自己一个人也写了很久,有很多东西是自己写的,当然也有在网上借鉴人家大神的,不一而足,代码太多,不贴了,直接上图.(一直出现的天蓝色是使用windows自带主题壁纸上截取的一段) [原本 ...