什麼是擴展方法html
擴展方法是一種特殊類型的靜態方法。對於一個C#類型,如類(包括密封類)、值類型、接口等,擴展方法能夠在不改變該類型源碼的前提下,爲它的實例提供新的成員。所以,若要爲一個框架或第三方庫的某個類型增長輔助功能,經過擴展方法就能夠垂手可得地實現,這也是「擴展」的意義所在。框架
擴展方法須要知足的條件:this
一、擴展方法必須定義在靜態類裏。spa
二、擴展方法必須是靜態方法。code
三、擴展方法的第一個參數以this修飾符爲前綴。htm
四、擴展方法必須在使用它的類的擴展方法內,不然必須顯示的using擴展方法所在的命名空間。對象
五、擴展方法只能被對象調用。blog
六、其餘命名空間下的擴展方法優先級低於當前命名空間的擴展方法。接口
七、擴展方法完成以後,必須從新生成一次纔會有有代碼提示。get
先寫個簡單的示例:
public static class DateTimeExtensions
{
public static string ToString_yyyyMMddHHmmssffff(this DateTime dateTime)
{
return dateTime.ToString("yyyy-MM-dd HH:mm:ss.ffff");
}
}