ASP.NET MVC 3 构建于 ASP.NET MVC 1 和2 的基础之上, 增加了大量的新功能。这些新功能既能简化你的代码,又允许你更加深入地进行功能扩展。本文将对以下所列出的新功能做个概述:
- The Razor View Engine
- Support for Multiple View Engines
- Controller Improvements
- JavaScript and Ajax
- Model Validation Improvements
- Dependency Injection Improvements
- Other New Features
The Razor View Engine(剃刀视图引擎)
ASP.NET MVC 3 增加了新的视图引擎 “Razor”,它具有以下特性:
- “Razor”具有清晰简洁的语法和最少的击打键盘的次数。
- “Razor”简单易学,部分原因是它基于已有的程序设计语言,如:C# 和 Visual Basic。
- Visual Studio 支持对“Razor”语法的智能感知和代码着色。
- “Razor”视图能够进行单元测试,而不需要运行整个应用程序或启动web服务器。
“Razor”的一些新特性如下:
“@model”语法:将指定的类型传递到视图。
- 注释语法:“
@* *@
”。 - 具有设定全站点默认的能力,如:
layoutpage
。 - “
Html.Raw”方法可以直接显示文字,而不需要用
HTML编码它。 - 支持多视图共享代码 (_viewstart.cshtml or _viewstart.vbhtml files)。
“Razor”还包含了新的 HTML 助手 , 具体如下:
“Chart”,渲染图表,提供了和
ASP.NET 4 中的“chart”控件相同的功能。“WebGrid”
,渲染数据表格,具有完整的分页和排序功能。“Crypto”,采用哈西算法进行加密。
“WebImage”,渲染图片。
“WebMail
”,发送email邮件。
关于“Razor”的更多信息请看以下资源:
- Scott Guthrie's blog post introducing Razor
- Scott Guthrie's blog post introducing the @model keyword
- Scott Guthrie's blog post introducing Razor layouts
- Razor API Quick Reference
- MVC 3 Release Notes