在C#中实现公共接口的问题

时间:2012-04-16 21:57:21

标签: c# interface

C#class libary - 针对.NET2框架。

我正在尝试在一个小类中实现一个公共接口(从第二个引用的程序集中公开)。该接口只有3个方法:一个很好,但由于某种原因,我不能实现其他两个方法而不会让编译器抱怨每一个:

  • 我的班级“未实施InterFaceName.MethodName”
  • “显式接口声明中的InterFaceName.MethodName不是接口的成员”。

编译的一个方法和另外两个方法之间的唯一区别是问题方法每个都有一个Office Interop(Word)类型的参数。其他参数是bool或其他公共接口的成员。

如果它有帮助我可以在这里添加我的类定义,但我需要做一些释义,因为我不是另一个程序集的“所有者”(它是商业产品)而且我不确定它们是怎样的感觉到我“暴露”它......

我知道这有点模糊,但我希望有人在此之前遇到这种错误。

感谢您的任何指示。

1 个答案:

答案 0 :(得分:3)

如果引用的程序集是针对不同版本的Office Interop程序集构建的,则通常会发生这种情况。

因此,即使为“MethodName”声明的参数可能看起来与引用的程序集中的接口匹配,但由于程序集版本不同,因此方法声明实际上与引用程序集的decleration不匹配。 / p>

仔细检查您使用完全相同版本的互操作程序集。