“StringPro.IMyString”类型在未引用的程序集中定义

时间:2012-02-12 16:38:15

标签: c# .net wcf exception-handling

尝试运行客户端时收到此错误。

  

类型'StringPro.IMyString'在未引用的程序集中定义。

此错误来自ProgramPros文件中的StringProClient,并在下面的第一行代码中以蓝色下划线:

StringProProxy.StringProProxy proxy = new StringProProxy.StringProProxy();

解决方案里面有4个项目:

StringPro - 包含服务接口(IMyString.cs)和实现类(MyString.cs)的类库

StringProHost - 具有Program.cs的控制台应用程序,其中定义了UriServiceHostEndpointServiceMetadataBehaviour,{{1} },HttpGetEnabled,调用host.Description.Behaviours并在控制台中显示有关服务启动时间的信息

StringProProxy - 我认为它是一个类库项目,因为它只有host.Open()来定义服务的代理

StringProClient - 控制台应用程序,它在内部实例化服务的代理,调用服务的功能并显示结果。

编辑:服务主机启动正常。由于上述错误,客户端无法构建和运行。

2 个答案:

答案 0 :(得分:2)

如果项目使用的是其他程序集中声明的类型,则必须引用此程序集 - 这基本上就是您的错误告诉您的内容。

在您的情况下,我猜测StringProClient正在引用StringProProxy,但它也使用StringPro项目中声明的类型(确切地说:IMyString接口/ class),没有引用它。您应确保StringProClient同时引用StringProProxyStringPro

答案 1 :(得分:0)

这样的问题主要出现在像命名空间这样的问题上。请再次检查您的参考文献和名称空间。

相关问题