Step by Step WebMatrix网站开发之三:Razor语法之一
因为在MSDN中没有具体的 Razor语法介绍,因而笔者的这些语法讲述也是从一些英文博客中抄来的,有错漏在所难免,请见谅。
以下是参考的博文:
ASP.NET MVC 3 Preview 1 - Razor View Engine
ASP.NET MVC 3: Server-Side Comments with Razor
ASP.NET MVC 3: Layouts and Sections with Razor
ASP.NET MVC 3 and the @helper syntax within Razor
ASP.NET MVC 3: New @model keyword in Razor
ASP.NET MVC 3: Layouts with Razor
ASP.NET MVC 3: Razor’s @: and <text> syntax
ASP.NET: Loop Statements in WebMatrix and Razor
在开始讲述语法前,先在WebMatrix中创建一个入门网站用来测试语法。
在ASP.NET中,要在页面中混入服务器端代码,一般会使用以下标记:
在Razor语法中,会使用“@”符号代替以上标记。打开入门网站的Default.cshtml文件,会看到以下代码:
在代码中,在@符号下,大括号内的代码就相当于服务器端代码,这是Razor语法的特点。大的代码块可以放到大括号内,而只是一行的代码,则可以直接使用@符号,例如在页面中显示的Page对象的Title属性的值,可以在"<.p>"之前加入以下代码:
单击运行后,在浏览器将看到如下图所示的结果。在ASP.NET,如果要在循环内输出内容,必须写三次标记,比较麻烦,例如以下代码:
在Razor语法中就不用那么麻烦, 因为,代码可以混在一起,靠@符号标识,例如,以上的代码可以写成:
将以上语句加入到“@Page.Title”下,刷新一下页面,就可看到在“欢迎访问我们的网站!”下列出了从0到9这10个数字。对比代码,可以看出Razor语法比较美观和简单,这也是Razor语法的最大特色。