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类型,并返回一个字符串,修改后的代码如下:

publicstring 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等内容,敬请关注!

posted @ 2011-07-06 14:37  拓荒者FF  阅读(38011)  评论(22编辑  收藏  举报