ASP.NET Razor 代码块

17 Mar 2025 | 阅读 2 分钟

代码块用于封装 C# 代码语句。它以 @ (at) 字符开头,并用 {} (大括号) 括起来。与表达式不同,代码块内的 C# 代码不会被呈现。代码块中的默认语言是 C#,但我们可以切换回 HTML。代码块内的 HTML 将被呈现为 HTML。


示例

// Index.cshtml

它产生以下输出。

ASP Razor code blocks 1

隐式转换

C# 是 Razor 代码块中的默认语言。在代码块内编写的 HTML 将被呈现为 HTML,这称为隐式转换。Razor 代码块隐式地转换 HTML 代码并将其呈现到视图页面。

在下面的代码中,HTML 被编写并且无需错误即可执行。

// Index.cshtml

它产生以下输出。

ASP Razor code blocks 2

显式分隔转换

有时,当我们定义应该呈现 HTML 的代码块的子部分时,将要呈现的字符用 Razor <text> 标签包围。

必须使用 <text> 标签。否则,它会抛出编译时错误。请参阅以下代码。

// Index.cshtml

它产生以下输出。

ASP Razor code blocks 3