最近用razor開發檢視,總的體會是,razor非常簡潔精煉,寫起來很爽。
簡單總結一下razor語法,主要是關於客戶端**和伺服器端**的靈活切換。
約定:客戶端**稱c域,伺服器端**稱s域
0. 基本原則
razor模板預設是c域(與php、aspx相同)
任何c域都可以內嵌s域
行內s域不可內嵌c域,多行s域可內嵌任何c域
@符號是關鍵符號,使用@從c域向s域切換
使用標籤從s域向多行c域切換,使用@:從s域向行內c域切換
1. 行內s域的幾種形式
@變數 例如:@user.name,變數或屬性結束後自動變回c域,如遇結束判斷有歧義,**括號如下
@( 表示式 ) 例如:@(i + 1) 或 @(user.name)
@方法呼叫 例如:@html.textbox("username").tostring()
2. 多行s域的幾種形式
@@if (條件)
@switch (條件)
@for (迴圈控制)
@foreach (迴圈控制)
@while (迴圈控制)
@do while (迴圈控制);
3. 行內c域的形式
@:行內文字,換行自動變回s域
4. 多行c域的幾種形式
任何標籤對 例如:多行文字
任何自閉合標籤 例如:
純文字使用偽標籤例如:多行文字,兩側標籤不會被輸出
5. 衝突解決
電子郵箱可自動識別並輸出 例如:[email protected] 會以文字形式正確輸出
誤判的解決 例如:[email protected] 會誤判為電子郵箱,應加括號解決,即:hello@(user.name)
非電子郵箱,則使用@@轉義輸出單個@
6. 預設指令符
@model 指定檢視使用的模型
@section 指示開始乙個節的定義
@helper 定義乙個htmlhelper擴充套件
Razor語法的要點
最近用razor開發檢視,總的體會是,razor非常簡潔精煉,寫起來很爽。簡單總結一下razor語法,主要是關於客戶端 和伺服器端 的靈活切換。約定 客戶端 稱c域,伺服器端 稱s域 0.基本原則 razor模板預設是c域 與php aspx相同 任何c域都可以內嵌s域 行內s域不可內嵌c域,多行s...
Razor語法大全
razor是基於framewor4以上寫的乙個開源專案 razor是包含了模板引擎和動態編譯兩部分。本部分就簡單記錄了模板引擎的一些語法,之後用razor做乙個 生成器,就使用razor的語法來。razor的發布是和mvc一起的,作為mvc的檢視模板引擎。razor可以在vb.net和c 中使用。分...
Razor語法示例
本章通過示例來說明常見用途下的razor語法。1.razor中的核心轉換符號是 這個單一字元用做標記 的轉換字元,有時也反過來用作 標記的轉換字元。這裡共有兩種基本型別的轉換 表示式和 塊。求出表示式的值,然後將值寫入到響應中。rootnamespace.models 在這個示例中想要的輸出結果是 ...