假设我在F#中定义了以下接口:
type IFoo<'T> =
abstract member DoStuff : 'T -> unit
Run Code Online (Sandbox Code Playgroud)
如果我在C#中实现这一点,则需要方法签名为:
public void DoStuff<T>(T arg) {...}
Run Code Online (Sandbox Code Playgroud)
我真正想做的是引用FSharp.Core,然后使用:
public Unit DoStuff<T>(T arg) {...}
Run Code Online (Sandbox Code Playgroud)
这将简化其他代码,因为我不必处理Action vs Func。我猜测没有任何干净的方法可以实现这一目标?邪恶的骇客怎么样?