MVC Razor 語法(轉)

http://blog.sina.com.cn/s/blog_580e98300100yvz4.html
原文地址:
MVC Razor 語法(轉)
做者: panzhaowen_jacki
語法名稱 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輸出便可
相關文章
相關標籤/搜索