Razor 视图引擎学习
Razor 视图文件扩展名为 cshtml 或者 vbhtml , 现在主要讨论 cshtml。
@ 定义 Razor 语句
1
2
3
4
5
|
< h2 > Name: @Model.Name </ h2 >
Time View Rendered: @Date.Time.ToShoarTimeString()
@if (Model.Category == "Watersports") {
< p > @Model.Category < b >Splash!</ b > </ p >
}
|
@: 输出单行不是以 html 标记开头的, 并且要包含 html 标记的内容
1
2
3
|
@if (Model.Category == "Watersports") {
@: Category: @Model.Category < b >Splash!</ b >
}
|
<text></text> 输出多行包含 html 标记的内容
1
2
3
4
5
6
7
8
|
@if (Model.Category == "Watersports") {
< text >
@: Category: @Model.Category < b >Splash!</ b >
< pre > Row, row, row your boat,
Gently down the stream ...
</ pre >
</ text >
}
|
@model 表示使用模型对象的类型
@model Razor.Models.Product
@{} 表示代码段
1
2
3
4
5
6
7
8
|
@{
if (Model.Category == "Watersports") {
@: Category: @Model.Category < b >Splash!</ b >
}
if (Model.Price > 10) {
< h5 >Pricey!</ h5 >
}
}
|
使用布局页面
在 cshtml 文件的开头可以指定使用哪个布局页面, 例如:
1
2
3
|
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
|
如果不指定 Layout 属性, Razor 引擎会检查 Views 目录下面的 _ViewStart.cshtml 文件, 这个页面指定了默认的布局页面。 如果不是用布局页面, 则需要在页面的开头添加声明如下: @{ Layout = null; } 以下划线 (_) 开头的视图文件不会返回给用户, 只能在服务端 cshtml 文件中进行引用。
@RenderBody() 渲染子视图
表示在此渲染子视图, 只能出现在布局页面中, 且只能出现一次。
@RenderPage 渲染另一个页面
表示在当前位置渲染另外一个页面。
@RenderSection(name, required) 渲染一个区域
表示在当前页面渲染一个区域, 区域名称在布局页面定义, required 表示该区域是否为可选的。
@region name {} 实现一个区域的内容
与布局页面的 @RenderSection 相对应, 实现布局页面的定义的区域。
张志敏所有文章遵循创作共用版权协议,要求署名、非商业 、保持一致。在满足创作共用版权协议的基础上可以转载,但请以超链接形式注明出处。
本博客已经迁移到 GitHub , 围观地址: http://beginor.github.io/
Razor 视图引擎学习相关推荐
- [转]ASP.Net MVC开发基础学习笔记(3):Razor视图引擎、控制器与路由机制学习
[出处]http://www.cnblogs.com/edisonchou/p/3923475.html 关于机制的介绍,讲得不错,觉得可以参考着学习一下 1.1 千呼万唤始出来的MVC3.0 在MV ...
- MVC学习三:Razor视图引擎
1.Razor视图引擎,主要是把View的HTML代码编译到View视图类对象中 转载于:https://www.cnblogs.com/WarBlog/p/7132611.html
- ASP.Net MVC开发基础学习笔记:三、Razor视图引擎、控制器与路由机制学习
一.天降神器"剃须刀" - Razor视图引擎 1.1 千呼万唤始出来的MVC3.0 在MVC3.0版本的时候,微软终于引入了第二种模板引擎:Razor.在这之前,我们一直在使用W ...
- Razor视图引擎、控制器与路由机制学习
1.1 千呼万唤始出来的MVC3.0 在MVC3.0版本的时候,微软终于引入了第二种模板引擎:Razor.在这之前,我们一直在使用WebForm时代沿留下来的ASPX引擎或者第三方的NVelocity ...
- ASP.Net MVC开发基础学习笔记(3):Razor视图引擎、控制器与路由机制学习
一.天降神器"剃须刀" - Razor视图引擎 1.1 千呼万唤始出来的MVC3.0 在MVC3.0版本的时候,微软终于引入了第二种模板引擎:Razor.在这之前,我们一直在使用W ...
- ASP.NET MVC3 Razor视图引擎-基础语法
I:ASP.NET MVC3在Visual Studio 2010中的变化 在VS2010中新建一个MVC3项目可以看出与以往的MVC2发生了很明显的变化. 1.ASP.NET MVC3必要的运行环境 ...
- ASP.NET MVC 3: Razor视图引擎中 @: 和text 语法【转载】
ASP.NET MVC 3: Razor视图引擎中 @: 和<text> 语法[转载] (文章没翻译:建议大家读英文原文,看不懂查着看,顺便提高自己的英语水平!) In today's p ...
- Razor视图引擎浅析
从Web Form开始,视图的机制其实就没改变过,动态编译视图脚本.所不同的是,Razor就仅仅是模板,没在嵌入与网站等相关的东西,应该是SRP的一个体现. 可惜,这种功能分离仍做得不彻底,MVC中, ...
- Razor视图引擎-基础语法
Razor视图引擎-基础语法 原文:Razor视图引擎-基础语法 所有以 @开头 或 @{ /* 代码体 */ } (在@与{直接不得添加任何空格) 的部分代码都会被ASP.NET引擎进行处理. 在 ...
最新文章
- C#生成pdf的源代码
- C++笔记——.和::和:和-的区别
- Flutter布局锦囊---男女性别单选
- 这个乐趣,使用芯片操作集成电路
- 第45届国际大学生程序设计竞赛(ICPC)银川站太原理工大学收获4枚奖牌
- 机器学习基础(十一)—— Logistic Regression 梯度更新公式的推导
- 在IDEA中Java项目如何创建测试类(Junit测试工具)
- 前端:分享几个前端素材网站
- 无人机三维建模(1) 调研
- TPH-YOLOv5: Improved YOLOv5 Based on Transformer Prediction Head forObject Detection on Drone-captur
- 10 个用于收集硬件信息的 Linux 命令
- C++11特性(详细版)
- 华晨宏盛让理财更有实用性的小窍门有哪些?最好的理财方法有哪些
- 组合总和(python实现)
- 【文件】Notepad3下载和配置
- 如何制作自己的系统镜像以及备份管理
- vercel.app无法访问
- Pandas--melt和pivot
- 数字系统设计Logsim实例 自主设计 学号音乐盒
- 价格术语trade term (price term)
热门文章
- 动手学深度学习(PyTorch实现)(七)--LeNet模型
- 交互系统的构建之(一)重写Makefile编译TLD系统
- mysql 1.42_MySQL索引(一)
- vue 悬浮按钮组件_如何搭建和发布一个 Vue 组件库
- mysql安装完只有黑框_MySQLMySQL的安装及安装中存在的问题
- toCharArray()和 charAt()的用法
- php之time的用法,php中time()与$_SERVER[REQUEST_TIME]用法区别
- 东华理工大学arm试卷_ARM东华理工大学2015-2016试卷A
- php编译安装swoole,PHP7 源码编译安装 Swoole 扩展
- 如何把局域网内不同数据库的两个表的数据进行传输?