65.9K
CodeProject 正在变化。 阅读更多。
Home

扩展方法

starIconstarIconstarIcon
emptyStarIcon
starIcon
emptyStarIcon

3.75/5 (4投票s)

2010年11月12日

CPOL
viewsIcon

20396

扩展方法

什么是扩展方法?
扩展方法允许程序员在“添加”方法到现有类型时,无需创建新的派生类型、重新编译或修改原始类型。扩展方法是静态方法,它们被调用时就像扩展类型上的实例方法一样。
示例 
public static class Utilities
{
   public static string encryptString(this string str)
  {
      System.Security.Cryptography.MD5CryptoServiceProvider x = new                      System.Security.Cryptography.MD5CryptoServiceProvider();
            byte[] data = System.Text.Encoding.ASCII.GetBytes(str);
            data = x.ComputeHash(data);
            return System.Text.Encoding.ASCII.GetString(data);
    }
}
如何调用扩展方法?
如您在下图中看到的,当您想在给定数据类型上调用时,IDE 智能感知会用向下箭头显示扩展方法。  
如上例所示,我创建了一个函数encryptString来加密包含敏感数据的字符串,并希望以加密形式将其存储在数据库中。 因此,扩展方法的常见用途是在您的项目中创建实用程序函数,这些函数可以扩展现有 .net 类型或项目中可用的现有 dll 的功能。
© . All rights reserved.