熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> ASP編程 >> 正文

C#3.0擴展方法

2013-11-15 12:52:12  來源: ASP編程 

  擴展方法是 中新加入的特性MSDN中對擴展方法的定義是擴展方法使您能夠向現有類型添加方法而無需創建新的派生類型重新編譯或以其他方式修改原始類型
   
    以下以對一個字符串進行MD為例
   
    如果不使用擴展方法~通常情況下我們寫一個這樣的方法
   
    public static string MDEncrypt(string str)
   
    {
   
    return FormsAuthenticationHashPasswordForStoringInConfigFile(str MD
   
    }
   
    在調用時使用
   
    str = MDEncrypt(str //str是明文str是經過了MD加密後的密文
   
    如果使用擴展方法~那麼我們需要寫這樣一個方法
   
    public static string MDEncrypt(this string str)
   
    {
   
    return FormsAuthenticationHashPasswordForStoringInConfigFile(str MD
   
    }
   
    調用時使用
   
    str=strMDEncrypt()
   
    擴展方法是靜態方法~並且第一個參數要用this修飾~這個方法將作為第一個參數也就是帶this參數的類的一個擴展方法~
   
    在這裡MDEncrypt並不是string類的一個方法~但通過擴展方法~可以將MDEncrypt當作string類的一個實例方法來調用如果調用的方法和擴展方法的實現在不同的程序集~則還需要using擴展方法所屬的程序集~
   
    在寫程序時~我們可能需要經常對字符串進行某種特殊的操作~如加密拆分等~以前我們可能是將這些方法寫在一個類中~在需要時調用這個類中的方法~現在我們可以將這些方法寫成擴展方法~這樣~當我們在string類型的變量後按下 就會智能提示出這些自己寫的擴展方法~


From:http://tw.wingwit.com/Article/program/ASP/201311/21788.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.