我有一个 F# 库,它向我的 C# 调用者返回一个 FSharpList。
我现在希望我的 C# 调用者的代码将其转换为列表。
在 C# 中执行此操作的最有效方法是什么?
谢谢。
比我想象的要容易...
从...开始:
List<double> niceList= new List<double>();
从List
到FSharpList
我这样做:
FSharpList<double> niceSharpList = ListModule.OfSeq(niceList);
并转换回FSharpList
我List
做了:
List<double> niceList= niceSharpList.ToList();
要完成这项工作,必须添加对项目核心 F # 4.0 的引用
例如在 F# 中你有这个
/// A list with 3 integers
let listA = [ 1; 2; 3 ]
您可以在 C# 中以非常简单的方式使用
List<Int32> listCSHARP = Module1.listA.ToList();
foreach (Int32 i in listCSHARP)
{
MessageBox.Show(i.ToString());
}