ASP.NET MVC 你一定要知道怎麼創立HTML Helper
- 2009-01-12
- 39754
- 0
ASP.NET MVC的測試如火如荼的在進行中,眼看RC版就要出來了,就在此時來介紹一個ASP.NET MVC的重要東西 HTML Helper(HTML助手),畢竟在MVC架構下不能用Web Control所以花點時間建立自己的HTML Helper,是可以大幅減少在開發的時間。
為什麼說HTML Helper是MVC架構下的一個重要東西呢?想想看,我們在撰寫一個頁面的時候如果需要一個日曆控制項,需要一個讓使用者輸入時間格式的控制項,在不使用.net內建的網頁控制項的時候要手動打造是不是還滿繁雜的,雖然說你或許可以花時間打造一個自己的日曆、時間選擇器出來後就從此以後複製貼上的使用,但是這不是一個很好的方法,透過了新的擴充方法Extension Methods 繼承到Helpers以後呼叫的方法會變得非常簡單且直覺,而官方也有相當多的文件可供我們學習
- MVC的Tutorials 文件Creating Custom HTML Helpers (使用C#)
- MVC的Tutorials 文件Creating Custom HTML Helpers (使用VB.NET)
- MVC的示範影片 觀看 (使用VB.NET)
demo也來實做一次官方的範例首先建立一個helper目錄來放我的將來製作的HTML Helper,然後新增一個class,類別名稱請自己命名一個你高興的
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc;//必須using MVC namespace MvcTest.Helpers { public static class labelaa//開放、靜態 的類別 { public static string Label123(this HtmlHelper helper, string text)//開放、靜態、的擴充方法 { return "<label>" + text + "</label>"; } } }
然後我們只需要在view 繼承
<%@ Import Namespace=" MvcTest.Helpers" %>
就可以直接用HTML.Label123了
而產生出來的label就如下
<label>文字文字</label>
是不是相當的簡單,只需要製作一次就可以重複的使用或許擴充Label您感覺不出來它的好,其實這的重點是在擴充方法,建立一個擴充方法實在非常的簡單,所以千萬是不要忽略了它的使用,還是不知道擴充方法的好?給你一篇對岸的MVC 擴充你就知道有多好了...(連結觀看)
回應討論