http://blog.csdn.net/pasic/article/details/7072340

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

1、代码体{...}

[html] view plaincopy

  1. @{  var x=100; 
  2. var y=100; 
  3. string str="this is string"; 
  4. }

在代码体中,没一行都需要用";"结束,代码区中,字母区分大小写。字符类型常量必须用""括起来,
2、 由于asp.net引擎会检解析查每个已@开头的代码,除非@前包括非空白字符;如:<div>test@razor</div> 
这样输出的信息还是test@razor,这不会进行解析,页面输出@符合,可以用HTML中的ASCII编码&#64。

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

[html] view plaincopy

  1. @{ 
  2. var message="现在时间为:"; 
  3. var time=DateTime.Now; 
  4. var outMessage=message+time; 
  5. <div>@outMessage </div>

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

4、字符拼接输出

[html] view plaincopy

  1. @{var cout=100;} 
  2. <p>这是第 @count 个进球 </p>

页面输出:这是第 100 个进球
如果页面要输出:这是第100个进球
则调用方式则为:<p>这是第@{@count}个进球</p>,
如果直接用<p>这是第@count个进球</p>,页面将会直接输出:这是第@count个进球
如果输出的是变量的方法名:
<p>这是第@count.ToString()个进球</p>,则可以不用@{}标志
5、 在@{...}代码体中输出文字,需要用到@:,如下所示:

[html] view plaincopy

  1. @{ 
  2. var name="张三"; 
  3. @:你好: 
  4. @:@name         
  5. }

页面输出:你好:张三

6、 逻辑代码处理

[html] view plaincopy

  1. @{ 
  2. if(true) 
  3. // do something; 
  4. else 
  5. // do something; 
  6. }

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

[html] view plaincopy

  1. @{ 
  2. <div>this is <span>test</span></div>
  3. }

页面输出:this is test
要进行多行输出时可用:

[html] view plaincopy

  1. @{ 
  2. <text>
  3. this first, 
  4. this secend   
  5. </text>
  6. }

页面输出:this first, this secend 
8、 在@{...}内部使用注释

[html] view plaincopy

  1. @{ 
  2. // 单行注释 
  3. var mesage = "Now Time:"; 
  4. @*  
  5. 当前时间 
  6. 输出当前时间 
  7. *@  
  8. /* 
  9. *  使用C#中的 
  10. *  注释 
  11. */ 
  12. var time = DateTime.Now; 
  13. <!-- HTML注释-->
  14. var outMessage = mesage + time; 
  15. }

9、 数据类型转换

[html] view plaincopy

  1. AsInt(), IsInt() 
  2. AsBool(),IsBool() 
  3. AsFloat(),IsFloat() 
  4. AsDecimal(),IsDecimal() 
  5. AsDateTime(),IsDateTime() 
  6. ToString() 
  7. @{ 
  8. var count = "100"; 
  9. <p>count:@count.AsInt()</p>
  10. 输出:count:100 
  11. <p>@count.IsInt()</p>
  12. 输出:True 
  13. 如果 
  14. @{ 
  15. var count = "test"; 
  16. <p>count:@count.AsInt()</p>
  17. 输出:count:0 
  18. <p>@count.IsInt()</p>
  19. 输出:False

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

[html] view plaincopy

  1. @{ 
  2. /* for循环使用 */ 
  3. for(int k=1;k<5;k++) 
  4. @:第 @k 个; 
  5. @*页面输出:第 1 个; 第 2 个; 第 3 个; 第 4 个; *@ 
  6. // foreach 使用 
  7. var list =new List<string> { "one", "two", "three", "four" }; 
  8. foreach(var str in list) 
  9. @:@str; 
  10. @*页面输出:one; two; three; four; *@ 
  11. var flag=1; 
  12. while(flag<5) 
  13. {  
  14. @:第@{@flag}个;  
  15. flag++; 
  16. @*页面输出:第1个; 第2个; 第3个; 第4个; *@ 
  17. }

Razor基础语法简介的更多相关文章

  1. Razor基础语法

    原文:Razor基础语法 一.介绍      Razor是ASP.NET MVC视图引擎的代号,支持.cshtml和.vbhtml两种模板文件,符号@标记服务端代码的开始,比以前asp.net的< ...

  2. Java笔记 - 基础语法简介

    一.Java语言简介 JAVA是一种面向对象的程序设计语言,为不同级别的开发划分为J2SE.J2EE(Java Web).J2WE三种平台,可以进行桌面应用编程.WEB客户端编程.WEB服务器编程.手 ...

  3. Blazor 003 : Razor的基础语法

    上文,我们通过剖析一个最简单的 Blazor WASM 项目,讲明白了 Razor 文件是什么,以及它被转译成 C#后长什么样子.也介绍了 Razor 中最简单的一个语法:Razor Expressi ...

  4. ASP.NET MVC3 系列教程 - Razor视图引擎基础语法

    http://www.cnblogs.com/highend/archive/2011/04/09/aspnet_mvc3_razor_engine.html 4. 关于所有带"_" ...

  5. Razor视图引擎基础语法

    在VS2010中新建一个MVC3项目可以看出与以往的MVC2发生了很明显的变化 1.ASP.NET MVC3必要的运行环境为.NET 4.0 (想在3.5用MVC3,没门!) 2.默认MVC3模板项目 ...

  6. ASP.NET MVC3 Razor视图引擎-基础语法

    I:ASP.NET MVC3在Visual Studio 2010中的变化 在VS2010中新建一个MVC3项目可以看出与以往的MVC2发生了很明显的变化. 1.ASP.NET MVC3必要的运行环境 ...

  7. .Net MVC4笔记之Razor视图引擎的基础语法

    Razor视图引擎的基础语法: 1.“_”开头的cshtml文档将不能在服务器上访问,和asp.net中的config文档差不多. 2.Razor语法以@开头,以@{}进行包裹. 3.语法使用: 注释 ...

  8. Markdown 简介及基础语法

    一.Markdown 简介 Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式. 二.Markdown 基础语法 1. Markdown ...

  9. ASP.Net MVC(3) 之Razor视图引擎的基础语法

    Razor视图引擎的基础语法: 1.“_”开头的cshtml文档将不能在服务器上访问,和asp.net中的config文档差不多. 2.Razor语法以@开头,以@{}进行包裹. 3.语法使用: 注释 ...

随机推荐

  1. akka笔记

    Actor UntypedActor actor的基类,继承并实现onReceive方法就可以得到一个Actor. Props 配置类,用Props.create可以创建一个按指定配置生成的Actor ...

  2. 简单回忆一下JavaScript中的数据类型

    说到JavaScript,大家都应该知道,它是一门脚本语言,也是一门弱类型语言,也是一门解析型的语言,同时也是一门动态类型的语言. 很好,至于JavaScript中数据类型.其分为基本数据类型和复杂数 ...

  3. 实现文本框默认灰色文字,点击消失,如果没输入内容可再返回原来的灰色文字(js版)

    $(document).ready(function(){ $("#biaoqian").val('这里是默认的灰色文字'); $("#biaoqian").c ...

  4. C++指针之防不胜防

    我们在使用指针时,经常会出现下面几种错误: 1) 内存分配未成功,却使用了它. 编程新手常犯这种错误,因为他们没有意识到内存分配会不成功.常用解决办法是,在使用内存之前检查指针是否为NULL.如果指针 ...

  5. Foundation框架—集合

    Foundation框架—集合 一.NSArray和NSMutableArray (一)NSArray不可变数组 (1)NSArray的基本介绍 NSArray是OC中使用的数组,是面向对象的,以面向 ...

  6. dll的编写和使用

    备忘: 1-1: def方式创建:VC6找不到stdafx.h,所以创建空工程,stdafx 里面功能太高端,不用不影响.DLL工程建立好后,新建一CPP文件,叫dlltest.cpp,直接去copy ...

  7. js面向对象组件

    1.包装对象 <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" ...

  8. composer -vvv

    然后在使用Composer install 或者 composer update 的时候会停住不动.使用-vvv可以输出更多信息,其命令参数输出的级别是Debug.具体可以查看composer hel ...

  9. 使用squid配置透明代理并对上网行为进行控制

    使用Squid配置透明代理 环境:CentOS 6.4 + squid-3.1.10-20.el6_5.3.x86_64 1.检查squid是否默认安装,没有安装先安装 rpm -qa squid 假 ...

  10. Hadoop学习资料

    转自:http://cloud21.iteye.com/blog/607175 第一手资源 hadoop官方网站 hadoop.apache.org 最权威的官方资源之一 dev.yahoo.hado ...