任何从f#代码调用c#函数的想法。
我有一个像这样的c#函数
public class VehicleDetailsBridge
{
public void SaveVehicle(long id)
{
var db = "test call";
}
}
然后在f#中我有:
type Persistence as this =
member x.SaveToDatabase(LatestVid)
let b = VehicleDetailsBridge()
b.SaveVehicle(LatestVid)
我在我的F#项目中引用了C#类库。
然而,当我运行此代码时,我在Xamarin中得到以下异常:
Mono.Debugger.Soft.VMDisconnectedExecption
答案 0 :(得分:2)
type Persistence() = // need braces here, and not 'as this'
member x.SaveToDatabase(latestVid) =
let b = VehicleDetailsBridge() // indent the method body
b.SaveVehicle(latestVid)
我的完整F#程序如下:
open FsCsInterop
type Persistence() = // need braces here, and not 'as this'
member x.SaveToDatabase(latestVid) =
let b = VehicleDetailsBridge() // indent the method body
b.SaveVehicle(latestVid)
printfn "Saved %d" latestVid
[<EntryPoint>]
let main argv =
let p = Persistence()
p.SaveToDatabase(2L)
0
// Prints "Saved 2"
答案 1 :(得分:0)
试试这个:
let b = VehicleDetailsBridge() // create instance of class
b.SaveVehicle(LatestVid)
VehicleDetailsBridge是一个类,因此您需要将其作为一个类打开。