Calling C# function with multiple arguments from F#

.net, f#

Solution

Try:

let g = f.Invoke |> FuncConvert.FuncFromTupled

Problem

It is easy to call `f:Func<'T, 'T>` from F# as `'T -> 'T` by using `f.Invoke` But how should I call `f:Func<'T, 'T, 'T>` from F# as `'T -> 'T -> 'T`? When I use `f.Invoke` I get `'T * 'T -> 'T`, i.e. a tuple instead of two arguments.

Original source