类型';StringPro.IMyString';在未被引用的程序集中定义
本文关键字:程序 程序集 定义 引用 集中 StringPro IMyString 类型 | 更新日期: 2023-09-27 18:24:07
我在尝试运行客户端时收到此错误。
类型"StringPro.IMyString"是在未引用的程序集中定义的。
此错误来自文件Program.cs中的StringProClient,并用蓝色下划线显示以下第一行代码:
StringProProxy.StringProProxy proxy = new StringProProxy.StringProProxy();
该解决方案内部有4个项目:
StringPro-包含服务接口(IMyString.cs
)和实现类(MyString.cs
)的类库
StringProHost-控制台应用程序,其中包含Program.cs,用于定义Uri
、ServiceHost
、Endpoint
、ServiceMetadataBehaviour
、HttpGetEnabled
、host.Description.Behaviours
,调用host.Open()
并在控制台中显示有关服务何时启动的信息
StringProProxy-我认为这是一个类库项目,因为它只有StringProProxy.cs
来定义服务的代理
StringProClient-控制台应用程序,它在内部实例化服务的代理,调用服务的函数并显示结果。
编辑:服务主机启动良好。由于上述错误,客户端将无法构建和运行。
如果一个项目使用的是在其他程序集中声明的类型,则必须引用该程序集-这基本上就是您的错误告诉您的。
在您的情况下,我猜StringProClient
引用了StringProProxy
,但它也使用了StringPro
项目中声明的类型(确切地说:IMyString
接口/类),而没有引用它。您应该确保StringProClient
同时引用StringProProxy
和StringPro
。
这样的问题大多只出现在命名空间之类的问题上。请再次检查您的引用和命名空间