Это просто экспериментальный / обучающий пример.Я чрезвычайно функциональный нуб.
F # код, который будет использоваться из C #:
module C
open System
open System.Collections.Generic
let Log format (f:Action<List<Object>>) =
let arguments = f.Invoke(new List<Object>())
let message = String.Format(format, arguments)
Console.Write(message)
C # код, который вызывает его:
C.Log("Hello {0}", c =>
{
c.Add("World");
});
Ожидаемый результат
Hello World
Фактический результат
Hello