在多个 WCF 服务之间共享类
Posted
技术标签:
【中文标题】在多个 WCF 服务之间共享类【英文标题】:Sharing classes between multiple WCF services 【发布时间】:2011-09-03 18:46:36 【问题描述】:我有两个 WCF 服务,一个用于读取操作,另一个用于写入操作。
虽然它们执行不同的操作,但它们都共享相同的类(通过对支持问题模型的其他项目的 DLL 引用)。
我的问题是,当我尝试将这两个服务添加到我的 C# 项目时,我无法共享同一个命名空间:
无法使用命名空间“X”创建服务引用,因为名称 已被现有服务引用、文件夹或文件使用
如果服务放在不同的命名空间中,类就会不同,重复的代码会增加很多。
有什么解决办法吗?
版本:非常类似于:Two WCF services with different contracts but same business objects。反正没有解决办法。
【问题讨论】:
感谢 Gert,很抱歉,但出现错误“无法使用命名空间 'X' 创建服务引用,因为该名称已被现有服务引用、文件夹或文件使用”。该选项在 VS2010 中默认提供 编辑后,该帖子的solution 是否适合您? 【参考方案1】:如果您使用 VS 2010(可能也适用于 2008),请单击“添加服务引用”窗口中的高级按钮并使用“在指定的引用程序集中重用类型”。根据您的项目的外观,您可能必须将生成的类型移动到其他程序集。
【讨论】:
感谢 pg0xC,但出现错误“无法使用命名空间 'X' 创建服务引用,因为该名称已被现有服务引用、文件夹或文件使用”。选择“在所有引用的程序集中重用类型”或“在指定的引用程序集中重用类型”都没有关系。还是失败了以上是关于在多个 WCF 服务之间共享类的主要内容,如果未能解决你的问题,请参考以下文章
WCF net.tcp 绑定:托管多个服务是不是需要端口共享?