demoshop

demo, trying to be the best_

官方網站
http://www.asp.net/mvc/

ASP.NET MVC的測試如火如荼的在進行中,眼看RC版就要出來了,就在此時來介紹一個ASP.NET MVC的重要東西 HTML Helper(HTML助手),畢竟在MVC架構下不能用Web Control所以花點時間建立自己的HTML Helper,是可以大幅減少在開發的時間。

為什麼說HTML Helper是MVC架構下的一個重要東西呢?想想看,我們在撰寫一個頁面的時候如果需要一個日曆控制項,需要一個讓使用者輸入時間格式的控制項,在不使用.net內建的網頁控制項的時候要手動打造是不是還滿繁雜的,雖然說你或許可以花時間打造一個自己的日曆、時間選擇器出來後就從此以後複製貼上的使用,但是這不是一個很好的方法,透過了新的擴充方法Extension Methods 繼承到Helpers以後呼叫的方法會變得非常簡單且直覺,而官方也有相當多的文件可供我們學習


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 擴充你就知道有多好了...(連結觀看)

回應討論