RAZOR视图介绍

一个cshtml,主体是一个html文本,里面可以写前台和后台代码,混合编写(个人认为不太好,应该分离),这个文件最后会被会被编译为一个类(所以他可以像类一样写一些方法,其他的地方调用)。

cshtml对应的有razor视图引擎,

RAZOR语法

Razor标识符

  @为服务器代码标识符,@UserName  @{....}

输出HTML

  @UserName    @Html.XXX       需要注意这些直接数据的,必须有返回值(例如:  @Html.Partial()    @{Html.RenderPartial()})

输出文本@:

  @:我是要输@出的内容

  <text>sdfsdf</text>  输出文本

  @{ Response.Write(456);}  因为cshtml文件会在后台处理变成html然后写入response响应流,但是这个直接写入到响应流中。所以他应该在页面上面,因为他先写入响应流。

  视图解析过程  视图一行一行解析,解析的东西render到内存缓存区。等全部解析完后, 然后在写入到response中。

  @{ ViewContext.Writer.Write("789W");}

  @@  输出@

  

作用域

  @{}  里面像写后台代码一样。

  @{

      var username="123";

      @username;

  }

  @if(1==2){

    

      }

混合编写

<div class="checkbox">
    <input type="text" value="@Model.Password" />
    @Html.CheckBoxFor(m => m.RememberMe)
    @Html.LabelFor(m => m.RememberMe)
</div>
View Code

相关文章: