【发布时间】:2015-12-07 03:52:24
【问题描述】:
当涉及到 WCF 和普通引用时,我很难理解某些引用方面。我有一个包含 4 个项目的解决方案。一个项目是服务,另外三个具有对该项目的服务引用。一个项目是传统上在其他三个项目中引用的基类库。
我必须按特定顺序更新服务引用,否则 VS 会对不明确的引用感到困惑。这是由于 WCF 引用以某种方式通过普通引用导入,因此所有与服务相关的内容都有两个命名空间。
我试图通过从除基本库之外的所有服务引用中删除服务引用来整理这一点,因此这将成为 WCF 连接的仲裁者并且不再有歧义。但是我不确定是否可以通过引用的方式在另一个项目中使用服务引用,并且服务会抛出未找到端点的异常。我确保这些项目仍然有终点,但他们现在没有参考。我假设端点会通过基本参考来实现,但似乎不是。现在基础库中的类在它们的基础版本和服务版本之间也存在冲突。
基本上,参考文献是这样的:
WCFProject ->serviceReferencereference
如何让 SiteProjects 在没有主项目中的服务引用但 BaseLibrary 中的服务引用的情况下使用 WCF 服务?
【问题讨论】:
-
我应该补充一点,我在调用引用时添加了 BaseLibrary 命名空间,例如:using(BaseNameSpace.WCFName.ServiceClient etc)
-
如果您认为这可以解决您的问题,则可以在您添加引用的程序集内部创建服务引用。
-
我不确定@Biscuits 我会检查这是否会有所帮助,但是我认为我的问题是我正在尝试让一个项目从引用的项目继承服务引用,但我不认为那是一回事。
-
您说的是“服务项目”,然后是“基类库项目”和“家庭项目”,并继续提到 3,这可能与引用“基类”的项目相同,也可能不同图书馆项目”,也有服务参考。我发现很难理解这一点。哪个是哪个?能给我们两张清晰的图片吗?一个显示程序集引用,另一个显示服务引用 - 但清楚地标识相同的项目
-
@Biscuits 很抱歉不清楚。该解决方案有 4 个项目,只有一个是服务项目,只有一个是引用项目,它们是独立的,其余两个是 Web 表单站点,它们都使用基础库中的服务和类。