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输出即可.

最新文章

  1. UWP应用开发系列视频教程简介 - Built for Windows 10
  2. 浏览器HTML5支持程度测试
  3. c++ new带括号和不带括号
  4. [Linux]Centos git报错fatal: HTTP request failed
  5. PHP 类的封装和使用
  6. yum 安装rabbitMQ
  7. 笔记:Spring Cloud Ribbon 客户端负载均衡
  8. java通过反射获取字段的类型
  9. Tesseract 在 windows 下的安装及简单应用
  10. alpha冲刺(5/10)
  11. AutoCompleteTextView 自定义提示样式
  12. Centos7下yum安装zabbix-server的部署(一)
  13. spark collect获取所有元素
  14. 2018-2019 20165226 Exp5 MSF基础应用
  15. git 分支的创建、合并、删除
  16. 【问题】 cookie 不保存特殊字符 解决办法
  17. springboot 的定时任务使用
  18. 引用数据类型(类)和ArrayList
  19. 【刷题】HDU 4405 Aeroplane chess
  20. winform里面的label怎么样实现,字上删除的效果

热门文章

  1. Mac 配置java版本 ---- MySql数据库权限设置 --- openfire
  2. Ajax、Comet、HTML 5 Web Sockets技术比较分析
  3. 240多个jQuery插件
  4. bzoj 3527: [Zjoi2014]力 快速傅里叶变换
  5. NWERC 2012 Problem J Joint Venture
  6. Entity Framework关联实体的三种加载方法
  7. Java RMI远程方法调用
  8. Android Service 详解
  9. maven 搭建企业级web项目
  10. 【HDOJ】2955 Robberies