WCF服务客户端正在劫持我的界面

时间:2011-11-29 18:53:20

标签: wcf

我有3个装配: FooInterfaces(类库) FooService(WCF服务) FooTests(测试申请)

在FooInterfaces中我有:

[ServiceContract]
public interface IFoo
{
   [OperationContract]
   void Bar();
}

在FooService.svc中我有:

public class FooService : IFoo
{
   void Bar() { ... }
}

现在在我的测试工具中,我希望在向FooService添加服务引用之后以这种方式实例化:

IFoo foo = new FooService();

问题是,有两个IFoo接口! FooInterfaces.IFooFooTests.FooServiceReference.IFoo。除非我指定,否则编译器会在两者之间混淆,并且两个IFoo类型不可转换。

在FooTests中有对FooInterfaces的引用。

我有其他实现IFoo的类,所以我真的需要一个IFoo接口。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

在FooInterfaces命名空间中有两个接口,在FooTests.FooServiceReference namepsace中有一个接口。当您创建对服务的引用并且是代理的一部分时,后者是为您创建的。要明确要使用的IFoo,请使用完整的命名空间名称。 “FooInterfaces.IFoo”。