一个新的视图引擎-Razor[‘reizə](剃须刀?)
在asp.net mvc中已经开始支持视图引擎这个概念了.它是一个可以拔插的模块,实现了不同模板的语法选择.当今,asp.net mvc默认的视图引擎是使用的和asp.net web forms一样的.aspx/.aspc/.master 文件模板.其他流行的asp.net mvc 视图引擎还有Spark和NHaml.
现在的新的视图引擎一直在围绕着如何优化生成Html使用 code-focused 模板的方法.这个视图引擎的名字叫做Razor.
设计目标:
我们有很多的设计目标.
- 精简,易于表达,流畅:Razor最小化了在一个文件中的字符数量以及关键字,可行化了一个快而流畅的编码流程.不同于很多的模板语法.你不需要在你的html代码中打断你的编码来显式的表示服务端的代码块.编译器很聪明的推断出你的代码,这些完全可以实现一个压缩并且容易表现的干净的语法结构.
- 容易学习. Razor可以很容易的学会,而且很高效的工作在掌握少量的感念后.你完全可以使用自己现有的语言以及html技能.
- 不是新的语言. 我们很谨慎的没有去创造新的语言,取而代之的是我们可以使开发人员利用自己现有的语言技能来使用Razor.来设计出一个很诱人的html结构
- 使用任何的文本编辑器.Razor不需要特定的工具,你只需要文本编辑器就能够很高效的编码
- 强大的感应.即使编码不需要特定的ide.但是还是给了很强大的智能感应在vs中,我们已经在vs2010中实现了
- 单元测试.这个视图引擎可以单元测试页面.不需要请求控制器或者server.