MVC框架——RAZOR
程序员文章站
2022-06-10 13:14:11
...
MVC框架——RAZOR
- 简介
一个视图模板引擎,支持cshtml和vbhtml两种文件类型
减少代码冗余,增强代码可读性,对代码推断能力比较强
- 语法
@字符是Razor中的一个重要符号
Razor支持代码混写,HTML语句和@后的C#语句
- 定义变量
@{…}是代码块,用于
@{需要运行的C#,在此定义一个页面上需要的多个变量}
如:
@{
string name = "Vincy";
int age = 18;
}
- 输出变量
@变量名称
如:
@{
int a = 10;
int b = 20;
@(a+b );
string h1 = "<font color='red'>ヾ( ̄▽ ̄)Bye~Bye~</font>";
}
@h1//此时输出整个字符串h1双引号中的内容
得到输出:
注意a+b一定要加括号,否则不能得到运算结果
如果要得到红色字体的ヾ( ̄▽ ̄)ByeBye输出,可以调用对象方法:
@Html.Raw(h1);
得到:
- 输出html标签
创建HtmlString对象,将html字符串放进HtmlString类进行封装,如:
@{
IHtmlString ih = new HtmlString(h1);
}
@ih
-
想要输出@这个符号,则
@@
-
想要输出邮箱地址,则
@[email protected]
-
使用@进行判断和循环,因为@后代码可直接跟C#语句,如:
@{
int a = 10;
int b = 20;
}
@if (a<b )
{
<h2>a小于b</h2>
}
else if (a == b)
{ <h2>a等于b</h2>}
else
{
<h2>a大于b</h2>
}
@{
List<string> test = new List<string> { "Monolithic","Power","System"};
}
<u1>
@for (int i = 0; i < 3; i++)
{
<li>@test[i]</li>
}
</u1>
<u1>
@foreach (var item in test)
{
<li>@item</li>
}
</u1>
得到相同结果
制作表格:
<table class="table table-bordered table-hover">
<thead>
<tr>
<th>name</th>
</tr>
</thead>
<tbody>
@*重复三行姓名,意味着对<tr><td>重复三次*@
@foreach (var item in test)
{
<tr>
<td>
@item
</td>
</tr>
}
</tbody>
</table>