staticclass Program { staticint Count (this IEnumerable e) { var n =0; foreach (var o in e) { n++; } return n; }
static IEnumerable Where (this IEnumerable e, Predicate p) { returnnew Filter(e, p); }
staticvoid Main () { var a =newint[] {1, 2, 3, 4, 6, 8, 9, 9, 9}; var n = a.Where(v => (int) v %2==0).Count(); var m = (from v in a where (int) v %2==0 select v).Count(); Debug.Print(n +""+ m); } }