MVC3教程之新手入门

简介:

  一、工具的选择

要进行MVC3的开发,请确保你的计算机上面已经安装了如下的软件:

  • Visual Studio Web Developer Express with SQL Express
  • ASP.NET MVC 3
  • SQL Management Studio

你还可以通过Web Platform Installer将这些软件一起安装到本地。

  二、从Helloworld开始

我们从最简单的Helloworld程序开始,体验MVC3带来的强劲便捷的功能。

  step1.新建MVC3项目

打开新建项目窗口,在“已安装的模板”列表中选择“Web”,在右侧应用程序模板列表中选择“ASP.NET MVC3 Web应用程序”,修改项目名称为“MVCHelloworld”,选择项目要保存的位置,点击“确定”按钮。

  step2.选择项目模板

在新建MVC3项目窗口,我们选择创建一个空的MVC3项目,使用Razor视图引擎,并勾选中“使用HTML5语义标记”,点击“确定”按钮,完成项目创建。

Razor 的视图引擎是Mvc3中提供的新的视图引擎,它具有以下优点:

  • Razor 的语法简单且清晰,只需要最小化的输入
  • Razor 容易学习,语法类似于 C# 和 VB
  • Visual Studio 对于 Razor 提供了智能提示和语法着色
  • Razor 视图不需要允许程序或者启动 Web 服务器就可以进行测试

打开资源管理器窗口,可以看到VS为我们创建的项目结构:

在不对项目进行任何修改的情况下,直接按CTRL+F5,运行项目,运行结果如下:

这是一个404错误,指定的页面未找到。在项目运行时,Mvc3会将页面请求进行映射。接下来我们为项目添加一个Home页。

  step3.让项目跑起来

我们需要添加一个名为Home的控制器。在项目文件夹“Controllers”上面右键,将鼠标移动到“添加”项,选择“控制器”,如下图:

在打开的添加控制器窗口中,修改控制器的名称为“HomeController”,模板为“空控制器”,如下图,点击“添加”按钮完成添加。

  step4.修改代码

VS为我们创建了HomeController控制器的代码,在Index方法中,返回之为ActionResult,为了完成本示例,我们将它修改为string类型,并返回一个字符串,修改后的代码如下:

public string Index()
{
return " <h1>Hello world by Mvc3</h1> ";
}

再次运行程序,界面截图如下:

我们的Helloworld已经可以运行起来了,但这不是我们想要的结果,因为到目前为止,只是在修改控制器,接下来,我们为控制添加一个Welcome方法,并在视图中,显示欢迎信息。

  step5.添加视图(View)

修改控制,添加一个名为Welcome的方法,代码如下:

public ActionResult Welcome()
{
return View();
}

在Welcome方法的代码块中,点击右键,在上下文菜单中选择“添加视图”,打开添加视图对话框:

在这个对话框中不做任何修改,点击“添加”按钮,完成视图的添加,VS会在View文件夹下床架如下结构的文件:

编译项目,在浏览器地址栏中输入地址:http://localhost:xxx/home/Welcome(xxx为端口号,在不同的计算机中会有所不同),运行结果如下:

  step6.使用ViewBag传递参数

继续修改控制器中的Welcome方法,为它添加一个名为name的string类型参数,修改后的代码如下:

public ActionResult Welcome( string name= "")
{
ViewBag.name = name;
return View();
}

  我们在这里使用了ViewBag属性,它是一个新的MVC3属性,MVC2 中的控制器支持 ViewData 属性,允许通过后绑定的字典将数据传送给视图模板,在 MVC3 中,你可以通过 ViewBag 来更加简单的完成。例如,对于 ViewData["Message"] = "text",你可以通过 ViewBag.Message = "text" 来完成。你不需要通过类来定义任何强类型的属性,因为这是动态属性,在内部,ViewBag 属性以名-值对的形式保存在 ViewData 字典中。注意,在许多预发布版本中,这个属性被称为 ViewModel。

  相应的,我们修改View中的代码,修改后的代码如下:

@{
ViewBag.Title = " Welcome ";
}

<h2>Hi @ViewBag.name, you ' re welcome!</h2>

ViewBag.Title是用来显示当前页面的标题的。

ViewBag.name使我们在控制器中添加的属性,在这里可以直接使用。

编译项目,修改刚才在浏览器中输入的地址,为它添加一个名为name的参数,地址如下:http://localhost:xxx/home/Welcome?name=Tom,运行界面如下:

  你也可以试试不加参数的情况,直接使用地址:http://localhost:xxx/home/Welcome,程序也是可以正常运行的,只不过输出的结果为“Hi , you're welcome!”,这时因为我们为参数name指定了默认值,它变成了一个可选的参数,在没有传入参数的时候,会采用默认值“空字符串”,所以会有这个输出结果。

  OK,本节就到此结束了,在本节中,我们演示了如何创建MVC3项目、添加控制器、添加视图、为视图传递参数等操作,在下一节中,我们会引入实体模型、Entity Framework4.1 Code-First等内容,敬请关注!




本文转自齐师傅博客园博客,原文链接:http://www.cnblogs.com/youring2/archive/2011/07/06/mvc3-1.html,如需转载请自行联系原作者

相关文章
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
191 7
|
前端开发 安全 Dubbo
Spring MVC & Boot & Cloud 技术教程汇总(长期更新)
Java成神之路技术整理(长期更新) 以下是Java技术栈微信公众号发布的关于 Spring/ Spring MVC/ Spring Boot/ Spring Cloud 的技术干货,本文长期更新。
415 0
|
前端开发 Java 数据安全/隐私保护
Spring MVC & Boot & Cloud 技术教程汇总(长期更新)
昨天我们发布了Java成神之路上的知识汇总,今天继续。 Java成神之路技术整理(长期更新) 以下是Java技术栈微信公众号发布的关于 Spring/ Spring MVC/ Spring Boot/ Spring Cloud 的技术干货,本文长期更新。
2010 0
|
前端开发 .NET 中间件
ASP.NET Core 配置 MVC - ASP.NET Core 基础教程 - 简单教程,简单编程
原文:ASP.NET Core 配置 MVC - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 配置 MVC 前面几章节中,我们都是基于 ASP.
2052 0
|
前端开发 .NET C#
ASP.NET Core MVC 设计模式 - ASP.NET Core 基础教程 - 简单教程,简单编程
原文:ASP.NET Core MVC 设计模式 - ASP.NET Core 基础教程 - 简单教程,简单编程   ASP.NET Core MVC 设计模式 上一章节中,我们提到 ASP.NET Core 支持 MVC 开发模式,不知道大家对 MVC 设计模式是否了解,算了,不管了,本章节我们就来讲讲 MVC 设计模式吧。
2424 0
|
前端开发 数据库 存储
MVC5+EF6 入门完整教程11--细说MVC中仓储模式的应用
原文:MVC5+EF6 入门完整教程11--细说MVC中仓储模式的应用   摘要: 第一阶段1~10篇已经覆盖了MVC开发必要的基本知识。 第二阶段11~20篇将会侧重于专题的讲解,一篇文章解决一个实际问题。
1389 0
|
XML 前端开发 定位技术
MVC 5 + EF6 入门完整教程14 -- 动态生成面包屑导航
原文:MVC 5 + EF6 入门完整教程14 -- 动态生成面包屑导航 上篇文章我们完成了 动态生成多级菜单 这个实用组件。 本篇文章我们要开发另一个实用组件:面包屑导航。 面包屑导航(BreadcrumbNavigation)这个概念来自童话故事"汉赛尔和格莱特",当汉赛尔和格莱特穿过森林时,不小心迷路了,但是他们发现在沿途走过的地方都撒下了面包屑,让这些面包屑来帮助他们找到回家的路。
1331 0
|
Web App开发 前端开发 容器
MVC5+EF6 入门完整教程13 -- 动态生成多级菜单
原文:MVC5+EF6 入门完整教程13 -- 动态生成多级菜单 稍微有一定复杂性的系统,多级菜单都是一个必备组件。 本篇专题讲述如何生成动态多级菜单的通用做法。 我们不用任何第三方的组件,完全自己构建灵活通用的多级菜单。
1183 0
|
Web App开发 前端开发
MVC5+EF6 入门完整教程12--灵活控制Action权限
原文:MVC5+EF6 入门完整教程12--灵活控制Action权限 大家久等了。 本篇专题主要讲述MVC中的权限方案。 权限控制是每个系统都必须解决的问题,也是园子里讨论最多的专题之一。 前面的系列文章中我们用到了 SysUser, SysRole, SysUserRole 这几个示例表。
1293 0