使用带有F#类型的CLR接口

时间:2010-06-23 01:43:42

标签: c# f# clr interface

我在使用F#类型的任何体面的C#接口时遇到了一些问题 因为我在一个项目中有以下C#接口...

//C#
namespace FunctionalInterfacing  
{  
    public interface IFoo  
    {  
        string Bar(string a, string b);  
    }  
}  

现在我想在F#中编写一个实现该类型的类型..

#light
module FunctionalInterfacing.Concrete
open FunctionalInterfacing

type public ConcreteType = 
    interface IFoo with
        member this.Bar a b = a

这似乎不起作用,我得到以下错误...

  

此覆盖对相应的抽象成员

采用不同数量的参数

任何想法?

1 个答案:

答案 0 :(得分:7)

你的覆盖不应该是curry形式(参数用空格分隔)。尝试

member this.Bar(a,b) = a

代替。