- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
razor语法大全
Razor是基于framewor4以上写的一个开源项目:/Antaris/RazorEngine/
Razor是包含了模板引擎和动态编译两部分。本部分就简单记录了模板引擎的一些语法,之后用Razor做一个代码生成器,就使用Razor的语法来。
Razor的发布是和MVC一起的,作为MVC的视图模板引擎。
?
Razor文件类型
? ?Razor可以在和C#中使用。分别对应了两种文件类型,.vbhtml和.cshtml?
?
Razor的标识符
? ??@字符被定义为Razor服务器代码块的标识符,后面的表示是服务器代码了。web form中使用%%中写服务器代码一个道理。在vs工具里面提供了代码着色和智能感应的功能。如下面代码:
@{string userName= 邓星林;}
span@userName/span
span@DateTime.Now.ToString(yyyy-MM-hh)/span
?
Razor的作用域
? ? ?在上面一个例子中都已经使用到了大括号{},不错,大括号里面的就是表示作用域的范围,用形如@{code}来写一段代码块。
@{
string userName= 邓星林;
@userName
}
在作用域(代码块)中输出也是用@符号的。
?
用Razor和html代码混合编写
? ?在Razor中写html代码和html代码中写Razor语句都是可以的,并且还有智能提示。
? ?a.在作用域内如果是以html标签开始则视为文本输出
? ?b.如果要输出@,则使用@@
? ?c.如果要输出非html标签和非Razor语句的代码,则用@:,他的作用是相当于在处于html下面编写一样了,如在@:后面可以加上@就是表示Razor语句的变量
?如:
@{
var str = abc;
////下面会输出:this is a mail:dxl0321@, this is var: abc,this is mail@str,this is @;
@: this is a mail:dxl0321@, this is var: @str,this is mail@str,this is @@;
//下面输出abc
@str
}
Razor作用块注释
? ? razor作用块里面本身就是服务器代码了,因此可使用服务器代码的注释,注释有//和/**/分别是单行注释和多行注释。
? ?另外razor注释还可以使用自身特有的@* 注释的内容 *@,支持单行和多行的。
@{
@*
多行注释
多行注释
*@
var i = 10; @* asdfasf *@
}
Razor类型转换
? ? ? ? ?As系列扩展方法和Is系列扩展方法
? ? ??? ? AsInt(), IsInt()
? ? AsBool(),IsBool()
? ? AsFloat(),IsFloat()
? AsDecimal(),IsDecimal()
? ? AsDateTime(),IsDateTime()
? ToString()
@{
var i = “10”;
}
p i = @i.AsInt() /p !-- 输出 i = 10 --
?
razor其它
??@Href(~/)//表示网站的根目录
??@Html.Raw(Module.Content) ?输出HTML,如:@Html.Raw(font color=red红字/font),就会显示出红色的”红字“,不用的话会直接显示这段html字符串(font color=red红色文字/font)
?
?
?
在实际中,比如一个网站,整过框架是一样的,而有的地方是很多相同的版块。因此我们需要复用。
?
布局(Layout)
? ?layout方式布局就是相当于一个模板一样的,我们在它地址地方去添加代码。相当于定义好了框架,作为一个母版页的,在它下面的页面需要修改不同代码的地方使用@RenderBody()方法
!DOCTYPE html
html lang=en
head
meta charset=utf-8/
title我的网站 - @Page.Title/title
/head
body
@RenderBody()
/body
/html
@{
Layout = /LayoutPage.cshtml;
Page.Title = 测试页面哦;
}
pThis is a layout test/p
?
页面(Page)
?p
文档评论(0)