限量在 ASP.NET MVC - 使用Razor自訂HtmlHelper元件 這篇提到如何在Html Helper中自訂一個Razor使用的元件。接著這篇要介紹一個類似的用法,就是在 cshtml 檔案裡定義Razor使用的全域 helper function。
在介紹如何使用前先來看看這兩者之間的差異:
下面就來看看如何宣告Razor helper function:
1. 在專案下建立一個名稱為 "App_Code" 的資料夾,並建立一個 cshtml 檔案。
2. 在建立的 cshtml 檔案內撰寫 Razor helper function,範例如下。
3. 在專案內的任意 cshtml 裡就可以直接使用剛剛建立的 Razor helper function。
4. 執行結果。
上面範例是限量正在Try的Google reCaptcha,在這篇就先偷偷放出一點執行的截圖,詳細的實作就要等限量研究完整再來分享。 XD
參考來源:
ASP.NET MVC 3 and the @helper syntax within Razor
在介紹如何使用前先來看看這兩者之間的差異:
HtmlHelper
function
|
Razor helper function
|
|
撰寫位置
|
cs檔
|
cshtml檔
|
使用方式
|
@Html.XXX
|
@{檔案名稱}.XXX
|
輸出方式
|
MvcHtmlString
|
html
|
範圍 |
只要using該Helper的namspace即可使用
|
全域,專案內的所有cshtml皆可使用
|
使用時機
|
需要進行後端複雜邏輯運算
|
單純Html元件組合
|
下面就來看看如何宣告Razor helper function:
1. 在專案下建立一個名稱為 "App_Code" 的資料夾,並建立一個 cshtml 檔案。
2. 在建立的 cshtml 檔案內撰寫 Razor helper function,範例如下。
@helper ReCaptchaWidget() { <div class="g-recaptcha" data-sitekey="6Le_GAETAAAAAEabMGnbfZWSd3hpxH-szWXF__Sx"></div> }
3. 在專案內的任意 cshtml 裡就可以直接使用剛剛建立的 Razor helper function。
4. 執行結果。
上面範例是限量正在Try的Google reCaptcha,在這篇就先偷偷放出一點執行的截圖,詳細的實作就要等限量研究完整再來分享。 XD
參考來源:
ASP.NET MVC 3 and the @helper syntax within Razor
留言
張貼留言