一、什么是Razor?
要是你知道什么是ASPX,那我就告诉你:Razor是和ASPX 一样的另一种视图引擎。说到视图就明白了很多吧。既然都为视图引擎,都是MS的东西,两个视图引擎,一前一后,肯定有区别。那么接下来让我们来认识一下Razor吧。
首先,Razor是作为一种后起的视图模板被ASP.NET MVC3使用。
这就暴露了Razor的一个重要信息:界面设计灵活,比aspx视图引擎更专注于WEB前端页面的设计。因为MVC就是基于WEB开发所诞生的一个设计模式,主旨之一就是将页面和业务逻辑解耦。如果说ASPX使用的很顺手的话,就没有必要在开发Razor了,所以这里的Razor是基于MVC设计的更适合WEB开发的视图引擎。
Razor在减少代码冗余、增强代码可读性和vs 智能感知方面,都有着突出的优势。
看看Razorde 特性吧:
· 紧凑、富有表现力和流畅:Razor尽量减少一个文件里需要敲入的字符数,给你畅快淋漓的编码体验。与大部分模板的语法不同,你不会因为需要在HTML中标注服务器端代码块而中断敲代码的快感。代码分析器足够聪明,能够从你的代码里推断出是否为服务器端代码。这使得其简洁、富有表现力的语法输入能够干净,快速,有趣。
· 上手快: Razor非常容易上手,你只需要了解很少的新东西就可以掌握它,使用你现有的编程语言和HTML知识就足够了。
· 不是一个新的编程语言:我们尽量避免为Razor创建一个新的命令式语言。相反,我们希望让程序员只使用现有的C#/VB(或其它)编程语言知识就能使用Razor,我们只不过在你选择的编程语言里,提供一个非常棒的基于模板生成HTML的标记语法。