我有一个在C#中的函数,被F#调用并使用Microsoft.FSharp.Collections.List<object>
作为其参数。
我该如何在C#函数中获取F# List中的项目?
编辑
我已经找到了一种'函数式'的方法来遍历它们,并可以将它们作为下面所示传递给一个函数以返回C# System.Collection.List:
private static List<object> GetParams(Microsoft.FSharp.Collections.List<object> inparams)
{
List<object> parameters = new List<object>();
while (inparams != null)
{
parameters.Add(inparams.Head);
inparams = inparams.Tail;
}
return inparams;
}
再次编辑
正如下面所指出的,F#列表是可枚举的,因此上面的函数可以被替换为以下一行代码:
new List<LiteralType>(parameters);
然而,有没有办法通过索引在 F# 列表中引用一个项目呢?