MVC 3.0 新的WebPages设计,他给我们简洁的代码实现方案。简单的@标记就可以代替成对出现的<% %>
_Layout.cshtml布局页面即和aspx的母版页相似。
Razor基础语法
1> Razor语法其实很简洁就是以@开头,输出变量要以@开头,循环判断for if等还是以@开头,代码体更是要以@开头
@{ ViewBag.Title = "主页"; } @*输出Html内容*@ @{ <p>@ViewBag.Title</p> <div> DIV</div> }
2> 支持C#语法
@* 支持C#语法*@ @{ var list = new List<string> { "张三", "李四", "王五", "赵柳" }; foreach (var person in list) { <li><a href="Index">@person</a></li> } }
3>支持逻辑关键字如foreach if else等
@{ ViewBag.Title = "主页"; } @* 支持C#语法*@ @{ var list = new List<string> { "张三", "李四", "王五", "赵柳" }; } @* 支持逻辑关键字如foreach if else等*@ @foreach (var person in list) { <li><a href="Index">@person</a></li> }
4>逻辑判断
@{ ViewBag.Title = "主页"; } @* 支持C#语法*@ @{ var list = new List<string> { "张三", "李四", "王五", "赵柳" }; } @* 逻辑判断*@ @if (list.Count > 0) { foreach (var person in list) { <li><a href="Index">@person</a></li> } }
5>文字输出 变量输出
@{ ViewBag.Title = "主页"; } @* 支持C#语法*@ @{ var list = new List<string> { "张三", "李四", "王五", "赵柳" }; } @* 文字输出 变量输出*@ @{ @:(*^__^*) 嘻嘻 @:@list[0] }
6>数据类型强制转换
@*数据类型强制转换*@ @{ var i = "10"; } <p> i = @i.AsInt() </p>
7>循环
@{ ViewBag.Title = "主页"; } @* 支持C#语法*@ @{ var list = new List<string> { "张三", "李四", "王五", "赵柳" }; } @*循环*@ @for (int j = 0; j < list.Count; j++) { @:@j: @:@list[j] } <br /> @*第二种写法*@ @{ for (int j = 0; j < list.Count; j++) { @:@j: @:@list[j] } }
Razor
_Layout.cshtml页面
<div id="logindisplay"> @Html.Partial("_LogOnPartial") </div>
学习参考网址:http://www.cnblogs.com/lukun/archive/2011/07/28/2119180.html