Razor基础语法简介

Razor的出现,使页面看起更加简洁,Razor的页面后缀为:.cshtml
Razor基础语法:
1、代码注释:
      多行注释: @*注释信息*@
     单行注释: // 注释

1、代码体{...}

@{	var x=100;
	var y=100;
	string str="this is string";
}

在代码体中,没一行都需要用";"结束,代码区中,字母区分大小写。字符类型常量必须用""括起来,


2、 由于asp.net引擎会检解析查每个已@开头的代码,除非@前包括非空白字符;如:<div>test@razor</div> 
这样输出的信息还是test@razor,这不会进行解析,页面输出@符合,可以用HTML中的ASCII编码&#64。


3、 在Razor中使用局部变量,进行上下文调用:

@{
var message="现在时间为:";
var time=DateTime.Now;
var outMessage=message+time;
}
<div>@outMessage </div> 

页面输出为:现在时间为:2011/12/14 20:26:13; 

4、字符拼接输出
    @{var cout=100;}
    <p>这是第 @count 个进球 </p>
页面输出:这是第 100 个进球

如果页面要输出:这是第100个进球
则调用方式则为:<p>这是第@{@count}个进球</p>,
如果直接用<p>这是第@count个进球</p>,页面将会直接输出:这是第@count个进球

如果输出的是变量的方法名:
<p>这是第@count.ToString()个进球</p>,则可以不用@{}标志

5、 在@{...}代码体中输出文字,需要用到@:,如下所示:
   @{
        var name="张三";
        @:你好:
        @:@name        
    }
页面输出:你好:张三

6、 逻辑代码处理

	@{
		if(true)
		{
			// do something;
		}
		else
		{
			// do something;
		}
	}


7、 在@{...}代码体内部使用html标记

@{
        <div>this is <span>test</span></div>
 }

 页面输出:this is test
 要进行多行输出时可用:
 @{
        <text>
        this first,
        this secend  
        </text>       
      }
  页面输出:this first, this secend 
 
8、 在@{...}内部使用注释
@{
    // 单行注释
    var mesage = "Now Time:";
    @* 
        当前时间
        输出当前时间
    *@ 
    
    /*
     *  使用C#中的
     *  注释
     */
    var time = DateTime.Now;

<!-- HTML注释-->
    var outMessage = mesage + time;
 }

9、 数据类型转换

      

    AsInt(), IsInt()
  AsBool(),IsBool()
  AsFloat(),IsFloat()
  AsDecimal(),IsDecimal()
  AsDateTime(),IsDateTime()
  ToString()

   @{
        var count = "100";
    }
    
    <p>count:@count.AsInt()</p>
	输出:count:100
    <p>@count.IsInt()</p>
	输出:True
	
    如果
	@{
              var count = "test";
	 }
    
    <p>count:@count.AsInt()</p>
	输出:count:0
    <p>@count.IsInt()</p>
	输出:False


即:AsInt() 如果转换不成功直接为0,IsInt返回Bool值,其他类似

10、循环使用
@{
        /* for循环使用 */
        for(int k=1;k<5;k++)
        {
            @:第 @k 个;
        }


        @*页面输出:第 1 个; 第 2 个; 第 3 个; 第 4 个; *@
        
        // foreach 使用
        var list =new List<string> { "one", "two", "three", "four" };
        foreach(var str in list)
        {
            @:@str;
        }
        @*页面输出:one; two; three; four; *@
        
        var flag=1;
        while(flag<5)
        { 
           @:第@{@flag}个; 
           flag++;
        }
         @*页面输出:第1个; 第2个; 第3个; 第4个; *@
}



     


  • 5
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
Razor语法是一种用于ASP.NET Web应用程序的视图引擎,允许开发人员通过混合C#代码和HTML标记来创建动态Web页面。以下是Razor语法的详细教程: 1. Razor语法中的代码块用@符号包围,如@{ }。这些代码块可以包含任何C#代码。 2. Razor语法中的表达式用@符号和小括号包围,如@( )。表达式可以是任何C#表达式,并且可以在HTML标记中嵌套使用。 3. Razor语法中的注释用@*和*@包围,如@* 这是一个注释 *@。 4. Razor语法中的条件语句可以使用if、else if和else关键字。例如: ``` @if (condition) { // do something } else if (condition2) { // do something else } else { // do something else } ``` 5. Razor语法中的循环语句可以使用for、foreach和while关键字。例如: ``` @for (int i = 0; i < 10; i++) { <p>@i</p> } @foreach (var item in collection) { <p>@item</p> } @while (condition) { // do something } ``` 6. Razor语法中的HTML标记可以直接嵌套在代码块中,如: ``` @{ var name = "John"; } <h1>Hello, @name!</h1> ``` 7. Razor语法中的HTML标记可以使用@符号和小括号来嵌套表达式,如: ``` <h1>@("Hello, " + name + "!")</h1> ``` 8. Razor语法中的HTML标记可以使用@符号和大括号来嵌套代码块,如: ``` @if (condition) { <p>Some text</p> } ``` 9. Razor语法中的HTML标记可以使用属性,如: ``` <a href="@Url.Action("Index", "Home")">Home</a> ``` 以上就是Razor语法的详细教程,希望能对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值