命名空间与WCF的名称混淆类似

本文关键字:WCF 命名空间 | 更新日期: 2023-09-27 18:24:00

我有点不明白应该遵守什么规则。我发现问题的出现是因为当前的应用程序名称恰好是"Common",这也是"Common"公司库的名称。我有一个WCF服务正在运行,并引用了几个具有以下命名空间的类库:

  • WCF服务:Common.Services
  • 应用域层:Common.Domain
  • 公共库:CompanyName.Common

有了这个命名,它编译得很好,但是当我使用WCF测试客户端的服务时,它说Company.Common不包含Domain,你缺少程序集引用了吗?

Company.Common实际上不包含嵌套的Domain命名空间。有单独的Common.Domain,但不应该嵌套,所以。。。?

如果我在另一个已经引用CompanyName.Common名称空间的客户端(例如web应用程序)中使用该服务,它就不会重用该类型,因为名称空间会变得混乱。

使用VisualStudio,我可以查看客户端上的两个引用程序集,它们显示了正确的结构。据我所知,WCF似乎不喜欢名称空间。

我想没有其他人见过这个吧?

命名空间与WCF的名称混淆类似

WCF在涉及到冲突的名称空间时,甚至在类作为不同的web服务端点公开时,都会遇到许多问题。例如,这将导致空的服务Reference.cs文件。在任何情况下,通常的好建议是将名称空间重命名为有意义的名称空间,或者将其分解为除"Common"之外的许多更有意义的名称名称空间。