Razor 语法快速参考 Razor 语法快速参考

Razor 语法快速参考

本文引自:http://haacked.com/archive/2011/01/06/razor-syntax-quick-reference.aspx

语法名称

Razor 语法

Web Forms 等效语法

代码块

@{ int x = 123; string y = "because."; }

<% int x = 123; string y = "because."; %>

表达式(默认encode)

<span>@model.Message</span>

<span><%: model.Message %></span>

表达式(不encode)

<span> @Html.Raw(model.Message) </span>

<span><%= model.Message %></span>

结合文本和标记的循环

@foreach(var item in items) { <span>@item.Prop</span> }

<% foreach(var item in items) { %> <span><%: item.Prop %></span> <% } %>

代码和文本混合

@if (foo) { <text>Plain Text</text> }

<% if (foo) { %> Plain Text <% } %>

代码和文本混合

@if (foo) { @:Plain Text is @bar }

同上

Email 地址

Hi philha@example.com

Razor 认识基本的邮件格式.可智能识别.

显示表达式

<span>ISBN@(isbnNumber)</span>

在括号里可以有些简单的操作.扩展一下就是@(20*pageIndex) 输出运算结果

输出@符号

<span>In Razor, you use the @@foo to display the value of foo</span>

要显示@符号,用两个@符号"@@"表示.

服务器端注释

@* This is a server side multiline comment *@

<%-- This is a server side multiline comment --%>

调用一个方法

@(MyClass.MyMethod<AType>())

使用括号来明确表达是什么.

创建一个Razor委托

@{ Func<dynamic, object> b = @<strong>@item</strong>; } @b("Bold this")

更多信息查看 this blog post .

混合表达式和文本

Hello @title. @name.

Hello <%: title %>. <%: name %>.

希望对您有所帮助. 

补充一个在View的脚本Script中显示JSON对象的方法

需求:var data=[{id:1,title="标题1},{id:2,title="标题2"}] 

实现:var data=@Html.Raw(@Newtonsoft.Json.JavaScriptConvert.SerializeObject(Model)) 

用Json.Net转换一下再Raw输出即可. 

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏我杨某人的青春满是悔恨

封装一个 Swift-Style 的网络模块

Swift 跟 OC 有着完全不同的设计哲学,它鼓励你使用 protocol 而不是 super class,使用 enum 和 struct 而不是 clas...

993
来自专栏安恒网络空间安全讲武堂

逆向专题 | Writeup分享一

逆向WP分享一 0x01.re4 首先我们先点开运行试玩一下,大意就是让你输入正确的用户名和密码就能拿到flag,接下来进入正题。 ? 丢进IDA中,先shi...

2429
来自专栏DOTNET

ASP.NET Web API编程——序列化与内容协商

1 多媒体格式化器 多媒体类型又叫MIME类型,指示了数据的格式。在HTTP协议中多媒体类型描述了消息体的格式。一个多媒体类型包括两个字符串:类型和子类型。 例...

4166
来自专栏林德熙的博客

Windows 10 16251 添加的 api 工具

本文主要讲微软最新的sdk添加的功能,暂时还不能下载,到 7月29 ,现在可以下载是 16232 ,支持Neon效果。 实际上设置软件最低版本为 16232 就...

1541
来自专栏finleyMa

PHP7 新语法总结,更新7.2注意事项

太空船操作符用于比较两个表达式。当$a小于、等于或大于$b时它分别返回-1、0或1

4242
来自专栏分布式系统和大数据处理

.Net中的反射(序章) - Part.1

反射是.Net提供给我们的一件强力武器,尽管大多数情况下我们不常用到反射,尽管我们可能也不需要精通它,但对反射的使用作以初步了解在日后的开发中或许会有所帮助。

1064
来自专栏张善友的专栏

ASP.NET SignalR HubPipelineModule

ASP.NET SignalR 1.0 实现的一个特性HubPipeline -实现任何消息incoming和outgoing的拦截。SignalR HubPi...

2197
来自专栏函数式编程语言及工具

Akka(4): Routers - 智能任务分配

    Actor模式最大的优点就是每个Actor都是一个独立的任务运算器。这种模式让我们很方便地把一项大型的任务分割成若干细小任务然后分配给不同的Actor去...

2865
来自专栏林德熙的博客

C# 字典 Dictionary 的 TryGetValue 与先判断 ContainsKey 然后 Get 的性能对比

本文使用 benchmarkdotnet 测试字典的性能,在使用字典获取一个可能存在的值的时候可以使用两个不同的写法,于是本文分析两个写法的性能。

2.2K2
来自专栏DOTNET

ASP.NET Web API编程——模型验证与绑定

1.模型验证 使用特性约束模型属性 可以使用System.ComponentModel.DataAnnotations提供的特性来限制模型。 例如,Requi...

9665

扫码关注云+社区

领取腾讯云代金券