1. 模板基本语法
@(value / 10)
输出运算结果
@@
输出@
@{
var i = 1;
}
代码块
@foreach(var item in items)
{
@item.name
}
在foreach内部,不用标签输出文本会被当做C#代码处理,可以加上<text></text>或者直接加上@:
@* *@
代码块注释
2. HtmlHelper
常用的HtmlHelper方法
@Html.Raw
输出纯的html, 不转义
@Html.ActionLink
输出链接
@Html.Partial
使用其它Partial模板输出
@Html.LabelFor
输出表单label
@Html.EditorFor
输出表单Editor
@Html.HiddenFor
输出hidden表单项
@Html.ValidationMessageFor
输出验证信息
@using (Html.BeginForm())
{
}
输出Html表单
@Html.ValidationSummary
表单验证信息显示
自定义HtmlHelper
创建自定义HtmlHelper, 可以给HtmlHelper添加extension method的方式来扩展
自定义的HtmlHelper引入到模板中,可以使用@using,或者在View文件夹下的Web.config文件中,添加上这个namespace.
3. Layout
系统使用哪个Layout在View文件夹中的_ViewStart.cshtml中指定, 在单个view中,可以重写这个Layout变量,改变layout页面。
@RenderBody
layout页面使用这个,表示这部分由其它view的输出
@RenderSection
每个section有个名字,其它的View可以使用下面的@section name的办法来输出
@section name{
}
填充layout中的section
4. Partial View
Html.Partial
指定一个View的名字,输出当前View的部分内容。
Html.Action
能够返回一个Action的输出, 这个Action返回的是PartialView
可以在Action上使用[ChildActionOnly], 这样这个ParticalView的Action就不能被公开访问了。