猿教程 Logo

Razor语法

阿里云服务器,每月低至7.8元,项目演示即建站必备,比腾讯云更便宜,并且不需学生认证,从此链接购买有效:去购买

Razor是ASP.NET MVC中支持的视图引擎之一。 Razor允许你使用C#或Visual Basic编写HTML和服务器端代码的混合。 Razor视图的VB基本语法有.vbhtml文件扩展名,C#语法有.cshtml文件扩展名。

Razor语法有以下特点:

  • 紧凑:Razor语法是紧凑的,它使您可以最小化字符数量和写入代码所需的击键。

  • 易于学习:Razor语法易于学习,您可以在其中使用熟悉的语言C#或Visual Basic。

  • 智能提示:Visual Studio支持智能提示Razor语法。

现在,让我们学习如何编写Razor代码。


内联表达式:

在HTML代码中从@符号开始写服务器端C#或VB代码。 例如,编写@Variable_Name以显示服务器端变量的值。 例如,DateTime.Now返回当前日期和时间。 所以,编写@ DateTime.Now显示当前datetime如下所示。 单个行表达式在表达式末尾不需要分号。

相关实例:

<h1>Razor syntax demo</h1>

<h2>@DateTime.Now.ToShortDateString()</h2>

运行结果:

Razor syntax demo 
08-09-2014

多语句代码块:

你可以写多行服务器端代码括在大括号@ {...}。 每行必须以与C#相同的分号结束。

相关实例:

@{
    var date = DateTime.Now.ToShortDateString();
    var message = "Hello World";
}

<h2>Today's date is: @date </h2>
<h3>@message</h3>

运行结果:

Razor syntax demo 
Today's date is: 08-09-2014
Hello World!

从代码块显示文本:

使用@:或<text> / <text>在代码块中显示文本。

相关实例:

@{
    var date = DateTime.Now.ToShortDateString();
    string message = "Hello World!";
    @:Today's date is: @date <br />
    @message                               
}

运行结果:

Razor syntax demo 
Today's date is: 08-09-2014
Hello World!

在代码块中使用<text>显示文本,如下所示。

相关实例:

@{
    var date = DateTime.Now.ToShortDateString();
    string message = "Hello World!";
    <text>Today's date is:</text> @date <br />
    @message                               
}

运行结果:

Razor syntax demo 
Today's date is: 08-09-2014
Hello World!

if-else条件:

编写以@符号开头的if-else条件。 if-else代码块必须用大括号{}括起来,即使对于单个语句。

相关实例:

@if(DateTime.IsLeapYear(DateTime.Now.Year) )
{
    @DateTime.Now.Year @:is a leap year.
}
else { 
    @DateTime.Now.Year @:is not a leap year.
}

运行结果:

2014 is not a leap year.

for循环:

相关实例:

@for (int i = 0; i < 5; i++) { 
    @i.ToString() <br />
}

运行结果:

0
1
2
3
4

模型:

使用@model在视图中的任何地方使用模型对象。

相关实例:

@model Student

<h2>Student Detail:</h2>
<ul>
    <li>Student Id: @Model.StudentId</li>
    <li>Student Name: @Model.StudentName</li>
    <li>Age: @Model.Age</li>
</ul>

运行结果:

Student Detail:
            
- Student Id: 1 
- Student Name: John 
- Age: 18

声明变量:

在括号中的代码块中声明一个变量,然后在@符号的html中使用这些变量。

相关实例:

@{ 
    string str = "";

    if(1 > 0)
    {
        str = "Hello World!";
    }
}

<p>@str</p>

运行结果:

Hello World!

所以这是一些重要的Razor语法。 访问asp.net详细了解Razor语法。

要点
  1. 使用@编写服务器端代码。 

  2. 服务器端代码块以@ {* code *}开头

  3. 使用@:或<text> </ <text>显示代码块中的文本。 

  4. if条件以@if开头

  5.  for循环以@for开头

  6. @model允许你在视图的任何地方使用模型对象。

在下一节中,了解如何在Razor视图中使用Html Helpers。

阿里云服务器,每月低至7.8元,项目演示即建站必备,比腾讯云更便宜,并且不需学生认证,从此链接购买有效: 去购买


版权声明:本站所有教程均为本站原创或翻译,转载请注明出处,请尊重他人劳动果实。请记住本站地址:www.yuanjiaocheng.net (猿教程) 作者:卿文刚
本文标题: C#环境
本文地址:http://www.yuanjiaocheng.net/mvc/mvc-razor-yufa.html