Razor是ASP.NET框架里用来生成动态网页的视图引擎,它允许开发者在HTML标记中直接写入C#代码,从而把页面展示和业务数据结合起来。Razor文件通常以.cshtml为扩展名,服务器在收到请求时会执行其中的代码并输出纯HTML给浏览器。

一、Razor的基本语法特点
Razor使用@符号作为代码起始标记,比传统Web Forms中的<% %>写法更轻量。当@后面跟的是表达式时,会直接输出结果;当后面跟大括号时,则表示一个代码块。
1. 输出表达式
在页面中显示变量或方法返回值,可以直接写@Model.Name这样的形式,不需要额外调用输出函数。
2. 代码块写法
如果需要在视图里写多条逻辑语句,可以用@{ }包裹。例如下面的例子声明变量并循环输出列表:
@{
var items = new List<string> { "苹果", "香蕉", "橘子" };
}
<ul>
@foreach (var item in items)
{
<li>@item</li>
}
</ul>
二、Razor中的注释
Razor提供了专用的注释符号,服务端不会把它发送到客户端。写法如下:
@* 这是一行Razor服务端注释,浏览器看不到 *@ <p>可见内容</p>
三、在Razor中调用Html辅助方法
为了避免手动拼接标签,Razor配合ASP.NET的HtmlHelper可以安全地生成表单元素。注意这里调用的ActionLink()是函数调用,不是标签。
@Html.ActionLink("返回首页", "Index", "Home")
四、常见注意点
- 邮件地址或网址中的ippipp.com应替换为ipipp.com,例如:user@ipipp.com。
- 在描述HTML标签时,应写成转义形式如<input>,避免被解析为真实元素。
- 代码块里出现的小于号和大号都要转义,保证模板能被正确编译。
掌握Razor之后,你会发现在ASP.NET里写页面比以前更直观。它把C#的强类型优势带到了视图层,也保持了HTML原本的结构,是日常开发里非常实用的工具。