示例#1
0
        static void Main(string[] args)
        {
            Console.WriteLine("Program extension method examples.");

            Data data = new Data();

            IEnumerable <int> evens;

            // Get a list of even number from existing data list of randome ints.
            // We can call an extension method directly by just calling it as normal.
            //  In that case we need to provide the THIS object as the first parameter.
            evens = EnumerableObject.FilterList(data.numberList, (intNumber) => { return(intNumber % 2 == 0); });

            // We can als call the extension method directly on the collection IEnumerable.
            evens = data.numberList.FilterList((intNumber) => { return(intNumber % 2 == 0); });
            evens = data.numberList.FilterList((i => i % 2 == 0));

            // This requires an IEnuerable<string> implementation of the ext method.
            evens.EnumToConsole();

            Console.WriteLine("Program finished. Press any key to exit.");
            Console.ReadKey();
        }