原文:
Razor基础语法
2.
@定义一行代码
3.@{...}定义代码块,并且HTML标签和代码可以混写
4.@:使后面按内容展示
5.@helper自定义片段
6.@functions自定义函数
7.@RenderBody()
8.@RenderPage()
一、介绍
Razor是ASP.NET MVC视图引擎的代号,支持.cshtml和.vbhtml两种模板文件,符号@标记服务端代码的开始,比以前asp.net的<%%>更加简洁
二、基本用法
1.@* *@注释
<div> <h3>@@**@@注释</h3> @* 这里是注释 *@ </div>
<div> <h3>@@定义一行代码</h3> <span>Cur Time is @DateTime.Now.ToString("yyyy-MM-dd")</span> </div>
<div> <h3>@@{...}定义代码块,并且HTML标签和代码可以混写</h3> <span> @{ string name = "Tom"; string msg = "Hi"; <span>@name say @msg</span> } </span> </div>
<div> <h3>@@:使后面按内容展示</h3> @{ @:this is @name } </div>
@helper ShowCurDate(){ <span>@DateTime.Now.ToString("yyyy-MM-dd")</span> } <div> <h3>@@helper自定义片段</h3> <span> 定义: <xmp> @@helper ShowCurDate(){ <span>@@DateTime.Now.ToString("yyyy-MM-dd")</span> } </xmp> 调用:@@ShowCurDate() 结果:@ShowCurDate() </span> </div>
@functions{ public string ShowMyDate(){ return DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); } } <div> <h3>@@functions自定义函数</h3> <span> 定义: <xmp> @@functions{ public string ShowMyDate(){ return DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); } } </xmp> 调用:@@ShowMyDate() 结果:@ShowMyDate() </span> </div>
<div> <h3>@@RenderBody()</h3> <span> 在布局页展示视图内容,并且只能出现一次 </span> </div>
<div> <h3>@@RenderPage()</h3> <span> 在布局页通过@RenderPage("~/Views/Test/Footer.cshtml")引用 </span> </div>
9.@RenderSection()
@section mySection{ <section class="featured"> <div class="content-wrapper"> <h2> 视图引擎Razor基础语法 </h2> </div> </section> } <div> <h3>@@RenderSection()</h3> <span> @@section在视图中定义如: <xmp> @@section mySection{ <section class="featured"> <div class="content-wrapper"> <h2> 视图引擎Razor基础语法 </h2> </div> </section> } </xmp> 在布局页中通过@RenderSection("mySection", false)使用 </span> </div>
10.@model定义视图模型
@model MvcTest.Controllers.Users <div> <h3>@@model定义视图模型</h3> <span> 定义: <xmp> @@model MvcTest.Controllers.Users </xmp> 调用:通过@@Model 结果:Name:@Model.Name Age:@Model.Age </span> </div>