Builds an array of delegates which return the intermediate objects in the expression chain.
x => x.Foo.Bar.Baz then the links will be:
- x => x
- x => x.Foo
- x => x.Foo.Bar
There is no delegate for the final property of the expression x => x.Foo.Bar.Baz.
public static Func<TIn, object>[] Build<TOut>(Expression<Func<TIn, TOut>> expression)