将C#函数调用转换为F# - 创建空对象数组

时间:2015-05-22 22:15:07

标签: f# c#-to-f#

如何将以下函数调用转换为F#call?

Hashtable table = (Hashtable) cookieJar.GetType().InvokeMember("m_domainTable",
                                                                BindingFlags.NonPublic |
                                                                BindingFlags.GetField |
                                                                BindingFlags.Instance,
                                                                null,
                                                                cookieJar,
                                                                new object[] {});

以下转换F#代码在new Object[]

上有错误
let cs = cc.GetType().InvokeMember("m_domainTable", BindingFlags.NonPublic |||
                                                                BindingFlags.GetField |||
                                                                BindingFlags.Instance,
                                                                null,
                                                                cc,
                                                                new Object[] {}))

1 个答案:

答案 0 :(得分:7)

要在F#中创建一个新的空数组,只需编写[| |],因此您的代码应为:

let flags = BindingFlags.NonPublic ||| BindingFlags.GetField ||| BindingFlags.Instance
let cs = cc.GetType().InvokeMember("m_domainTable", flags, null, cc, [| |])