Razor语法:
Razor:
不是一种代码语言,而是视图中使用的代码 引擎。
它以简洁的类似客户端的语法结构,呈现网页服务端代码功能
它替代了ASPX页面的“<%...%>”代码块语法。
在编写时使用“@符号”开头,“@符号”是Razor的标志。
使用Razor获取当前时间:
<p>现在时间:@DateTime.Now</p>
使用Razor输出表达式:@if,@foreach与HTML混合输出:
Home控制器中;
public ActionResult Index()
{
ViewBag.biaoti = "用户账号信息";
ViewBag.name = "张三";
ViewBag.tr=true;
ViewBag.isValid = false;
return View();
}
视图页面:
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>用户账号信息</title>
</head>
<body>
<div>
<p>标题:@ViewBag.biaoti</p>
<p>用户名:@ViewBag.name</p>
<p>登录状态:@(ViewBag.tr ? "启用" : "禁用")</p>
<p>登录时间: @DateTime.Now</p>
@if (ViewBag.tr)
{
<h4 style="color:green">尊敬的用户,欢迎你</h4>
}
else
{
<h4>您还没有激活,请尽快激活账户!</h4>
}
@if (ViewBag.isValid)
{
<h1>正常访问</h1>
}
else
{
<h1 style="font-style:italic;color:red ">访问被拒绝</h1>
}
@*@{
bool isValid = false;
}*@
@*数组循坏*@
@{
string[] teams = { "张三", "李四", "王五", "赵柳", "李玉龙" };
foreach (string item in teams)
{
<p>@item</p>
}
}
</div>
</body>
</html>
运行结果:
@model强类型:
连接数据库:
使用MVC查询数据库中字段:
Home控制器中:
public class HomeController : Controller
{
MVCLession31Entities db = new MVCLession31Entities();
// GET: Home
public ActionResult Index()
{
IEnumerable<Dept> listDept = db.Dept.ToList();
return View(listDept);
}
}
Index前端:
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
</head>
<body>
<div>
<h1>查询部门信息</h1>
<table width="600" border="1">
<tr>
<th>部门编号</th>
<th>部门名称</th>
</tr>
@foreach (var item in Model)
{
<tr>
<td>@item.DeptId</td>
<td>@item.DeptName</td>
</tr>
}
</table>
</div>
</body>
</html>
运行结果;