真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

詳解C#中的擴(kuò)展方法-創(chuàng)新互聯(lián)

這篇文章主要詳解C#中的擴(kuò)展方法,內(nèi)容清晰明了,對此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會有幫助。

站在用戶的角度思考問題,與客戶深入溝通,找到沙坡頭網(wǎng)站設(shè)計與沙坡頭網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗(yàn)好的作品,建站類型包括:成都網(wǎng)站設(shè)計、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名注冊、網(wǎng)站空間、企業(yè)郵箱。業(yè)務(wù)覆蓋沙坡頭地區(qū)。

擴(kuò)展方法(Extension Methods)是C#3.0時引入的新特性,相信很多人都聽過并且也都用過,最常見的是在LINQ中的使用。

詳解C#中的擴(kuò)展方法

不僅如此,在開發(fā)中,我們也可以創(chuàng)建自己擴(kuò)展方法,使用它來優(yōu)化類的設(shè)計、簡化代碼。本文將簡單地介紹擴(kuò)展方法的概念、定義、使用場景以及要注意的點(diǎn)。

一、概念

擴(kuò)展方法是一種特殊類型的靜態(tài)方法。對于一個C#類型,如類(包括密封類)、值類型、接口等,擴(kuò)展方法可以在不改變該類型源碼的前提下,為它的實(shí)例提供新的成員。因此,若要為一個框架或第三方庫的某個類型增加輔助功能,通過擴(kuò)展方法就可以輕而易舉地實(shí)現(xiàn),這也是“擴(kuò)展”的意義所在。

二、如何定義

創(chuàng)建擴(kuò)展方法很簡單,有以下幾個步驟:

1、創(chuàng)建一個靜態(tài)類;

2、在其中創(chuàng)建一個靜態(tài)方法;

3、為這個靜態(tài)方法添加至少一個參數(shù),并在第一個參數(shù)前加上this關(guān)鍵字,這個關(guān)鍵字會告訴編譯器當(dāng)前方法是一個擴(kuò)展方法。而這個方法將成為第一個參數(shù)所屬類型的新成員。

以下一個典型的擴(kuò)展方法,用于為枚舉值提供一個可獲取其DescriptionAttribute特性值的方法:

namespace TLA. Infrastructure. Extensions
public static class EnumExtensions
{
public static string GetDescription(this Enum en)
{
Type type = en. GetType();
MemberInfo[] memInfo = type . GetMember(en. ToString());
if (memInfo != null && memInfo.Length > 0)
{
object[] attrs = memInfo[0] .
GetCustomAttributes (typeof (DescriptionAttribute), false);
if (attrs != null && attrs. Length > 0){
return ( (DescriptionAttribute )attrs [0]) . Description;
}
}
return en. ToString();
}
}
}

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。


網(wǎng)站標(biāo)題:詳解C#中的擴(kuò)展方法-創(chuàng)新互聯(lián)
分享URL:http://weahome.cn/article/dpgjpi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部