Full source code available here.
Some related posts -
Simple Func and Func<T1, T2, TResult> Examples C# Lambdas Part 1, a Quick Overview with Examples C# Lambdas Part 2, a Few More Complicated Examples C# Lambdas Part 3, Setting Parameters Up Front, and Mismatching Func and Action Definitions A junior engineer colleague of mine recently asked me “how the f* * * do I call this method?