假设我声明了这个字符串数组:
string[] arr = new string[]{"foo", "bar"};
LINQ 扩展方法是如何附加到它的?
我知道 LINQ 扩展方法是在 System.Linq.Enumerable 中声明的,但是扩展方法作用于IEnumerable<TSource>
:
public static IEnumerable<TSource> Where<TSource>(this IEnumerable<TSource> source, Func<TSource, bool> predicate);
由于 arr 不是通用的,并且据我所知没有实现扩展方法IEnumerable<T>
是如何Where()
附加到它的?