什么是扩展方法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");
}
}