ASP.NET - Razor Code Blocks

ASP.NET - Razor Code Blocks 首页 / ASP.Net MVC入门教程 / ASP.NET - Razor Code Blocks

代码块(Code Blocks)用于封装C#代码语句。它以@(At)字符开头,并用{}(花括号)括起来。与表达式不同,代码块中的C#代码不会呈现。代码block中的默认语言是C#,但是无涯教程可以转换回HTML语言。代码blocks中的超文本标记语言将呈现为超文本标记语言。

示例

//Index.cshtml

@{
    Layout = null;
    var name = "John";
}
<!DOCTYPE html>
<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>Index</title>
</head>
<body>
    <h2>My name is: @name </h2>
</body>
</html>

它会产生以下输出。

ASP Razor code blocks 1

C#是Razor代码块的默认语言。在代码块中编写的超文本标记语言被呈现为超文本标记语言,这称为隐式转换。Razor代码阻止隐式转换HTML代码并呈现到视图页面。

在下面的代码中,编写了HTML,并且执行时没有错误。

//Index.cshtml

@{
    Layout = null;
}
<!DOCTYPE html>
<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>Index</title>
</head>
<body>
@{
    var name = "Learnfk";
    <h4>Welcome to the @name </h4>
}
</body>
</html>

它会产生以下输出。

ASP Razor code blocks 2

有时,当无涯教程定义应该呈现HTML语言的代码的子节时,使用Razor<text>标记将要呈现的字符括起来。

它被强制使用Text标记。否则,它将抛出编译时错误。请参见以下代码。

//Index.cshtml

@{
    Layout = null;
}
<!DOCTYPE html>
<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>Index</title>
</head>
<body>
@for (var i = 0; i < 5; i++)
{
    <text>i= @i </text> <br/>
}
</body>
</html>

它会产生以下输出。

ASP Razor code blocks 3

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

浏览器工作原理与实践 -〔李兵〕

苏杰的产品创新课 -〔苏杰〕

检索技术核心20讲 -〔陈东〕

用户体验设计实战课 -〔相辉〕

程序员的测试课 -〔郑晔〕

手把手带你搭建秒杀系统 -〔佘志东〕

大厂广告产品心法 -〔郭谊〕

LangChain 实战课 -〔黄佳〕

Rust 语言从入门到实战 -〔唐刚〕

好记忆不如烂笔头。留下您的足迹吧 :)