Razor视图引擎的基本概念与法语
Razor 视图引擎的特点:
- 简洁、富于表现、流畅
尽量减少页面代码的输入,实现快速流畅的编程工作
不必明确为服务器代码标记起始与结束符,Razor 能智能判断,这样让页面看清洁,代码方便阅读
aspx代码
<ul>
<% foreach(var str in list ){
%>
<li>
<%=str %>
</li>
<%
} %>
</ul>
Razor代码
<ul>
@foreach (var str in list) {
<li>@str</li>
}
</ul>
- 易于学习
对于有过WEB开发经验的人来说, 能快速学会,就几个需要注意的点
- 支持单元测试
Razor的基本语法
伟大的@标记
@标记是Razor的根本,服务器端代码段都以@开始
代码块
@{
var i = ;
var str = "Holle world!";
}
HTML编码
@输入都是经过编码的,如果不需要编码,需要使用@Html.Raw(str)
代码与纯文本混合
方式一、用<text>输出的文本内容</text>
@for (int i = 0; i < 10; i++)
{
<text>Holle world</text>
}
方式二、使用 @: 输出
@for (int i = 0; i < 10; i++)
{
@:Holle world
}
表达式与文本混合
Holle @FirstName . @LastName .
EMAIL地址
151279853@qq.com
Razor可以自动认别Email地址,而不会做服务器代码执行
输出@符号
当页面需要输出@符号时,连续两次@@ 这样输出,与C#的转义字符类似。
显示输出
当@与前面的文本之间无空间时,需要使用()号输入,如 <text> Hello@(UserName) </text>(<text>标记其实是为了让Razor把<text>当HTML标签处理,但不输出)
服务器断注释
@*
This is server side
This is server side
*@
Razor创建委托
Razor创建委托是为以复用视图逻辑
@{
Func<dynamic, object> b = @<strong>@item</strong>;
} @b("这样会给字体加粗!")
内容中混合代码
<ul>
@foreach (var str in list)
{
<li>
@if (isTrue)
{
@: isTrue 为 @isTrue
}
else
{
@:(isTrue 为 @isTrue)
}
</li>
}
</ul>
多行内容混合代码
当多行内容在HTML闭合的标签中时,可以直接使用@
@if (isTrue)
{
<p>
现在时间<br />
现在时间是:@DateTime.Now<br />
现在时间<br />
</p>
}
当多行内容不在HTML闭合标签中时,需要使用行输出标记@: 或 <text></text>标记
@if (isTrue)
{ @:现在时间<br />
@:现在时间是:@DateTime.Now<br />
@:现在时间<br /> } @if (isTrue)
{
<text>
现在时间<br />
现在时间是:@DateTime.Now<br />
现在时间<br />
</text>
}
Razor视图引擎的基本概念与法语的更多相关文章
- Razor视图引擎布局 Razor视图引擎的基本概念与法语 SQL Server Mobile 和 .NET 数据访问接口之间的数据类型映射 binary 和 varbinary datetime 和 smalldatetime float 和 real
Razor视图引擎布局 不需要像过去aspx一样,使用.Master文件,而是统一使用.cshtml 或 .vbhtml文件.但文件名一般以 _开头,这样做文件不会当做View显示出来 使用@Re ...
- ASP.NET MVC 3 Razor 视图引擎 基本语法
本篇博文将进入MVC 3 的世界了,首先学习一下MVC 3 新增的Razor视图引擎的基本语法. 1. 使用 @ 字符将代码添加到页面中.正如传统的aspx视图的<% %>相同. ...
- ASP.NET MVC——Razor视图引擎
Razor是MVC框架视图引擎,我们今天就来说一说Razor视图引擎. 首先还是来创建一个基础项目叫Razor来演示. 先来定义一个Model叫Product public class Product ...
- ASP.Net MVC开发基础学习笔记:三、Razor视图引擎、控制器与路由机制学习
一.天降神器“剃须刀” — Razor视图引擎 1.1 千呼万唤始出来的MVC3.0 在MVC3.0版本的时候,微软终于引入了第二种模板引擎:Razor.在这之前,我们一直在使用WebForm时代沿留 ...
- Razor 视图引擎 – ASP.NET MVC 4 系列
Razor 视图引擎是 ASP.NET MVC 3 开始扩展的内容,并且也是默认视图引擎. Razor 通过理解标记的结构来实现代码和标记之间尽可能顺畅的转换.下面的例子演 ...
- ASP.Net MVC开发基础学习笔记(3):Razor视图引擎、控制器与路由机制学习
一.天降神器“剃须刀” — Razor视图引擎 1.1 千呼万唤始出来的MVC3.0 在MVC3.0版本的时候,微软终于引入了第二种模板引擎:Razor.在这之前,我们一直在使用WebForm时代沿留 ...
- Razor视图引擎语法
@{ Layout = null; } <!DOCTYPE html> <html> <head> <meta name="viewport&quo ...
- ASP.NET Razor 视图引擎编程参考
ASP.NET Razor 视图引擎编程参考 转载请注明出处:http://surfsky.cnblogs.com Rasor 视图引擎 http://msdn.microsoft.com/ ...
- ASP.NET MVC Razor视图引擎攻略
--引子 看下面一段MVC 2.0的代码. <%if (Model != null){%> <p><%=Model%></p><%}%>&l ...
随机推荐
- 第一节 Hibernate 基本配置
1 新建maven工程 1)打开eclipse,依次点击File---->New---->Maven Project. 2)选择org.apache.maven.archetypes ma ...
- flex_播放视频_本地_与_FMS端
<?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="ht ...
- C++ VARIANT 学习小记录
一:为什么会有这个? 目前,计算机语言有很多(大哥,为什么不能就那么一样呢?),如C++.Java,此外还有JavaScript.VBScript等脚本语言,它们自立门派,各自维护自己的数据类型. C ...
- Beaglebone Back学习七(URAT串口测试)
URAT串口测试
- 快速编译Delphi XE3 项目工程组
Embarcadero 做了个好事.工程组可以直接使用 MSBuild 进行编译,让发布更简单.在Bin目录中 rsvars.bat 用于设置编译的环境变量,结合使用就可以顺利进行编译. call r ...
- oracle linux了解基本命令行
1. Linux的版本:核心(kernel)版本和发行(distribution)版本 2. 复制.删除和移动文件的命令 cp [选项] 源文件或目录 目标文件或目录 -R,-r ...
- bootstrap 框架选型过程
1.看有没有帮助文档,帮助文档的完整程度. 2.是否是我们业务需要的,花哨的功能真的有用吗? 对于偏pc端使用的系统 toggles意义不大 bootstrap和extjs的区别是什么呢? easyU ...
- linq and rest api in sharepoint
//1.make sure your application using the .net fromwork 3.5 //2.create entity classes using the instr ...
- selenium + python网页自动化测试环境搭建
1.python的安装 ,这个不解释,exe文件运行安装即可,既然你选择python,相信你是熟悉python的,我安装目录C:\Python27 2.setuptools 的安装也非常简单,同样是e ...
- (转)深入理解SP、LR和PC
网址:http://blog.csdn.net/zhou1232006/article/details/6149548 深入理解ARM的这三个寄存器,对编程以及操作系统的移植都有很大的裨益. 1.堆栈 ...