C# 与WCF名称空间相似的名称混淆
我有点困惑我应该遵守什么规则。我发现出现问题是因为当前的应用程序名恰好是“Common”,这也是“Common”公司库的名称。我有一个WCF服务运行并引用了两个具有以下名称空间的类库:C# 与WCF名称空间相似的名称混淆,c#,wcf,namespaces,C#,Wcf,Namespaces,我有点困惑我应该遵守什么规则。我发现出现问题是因为当前的应用程序名恰好是“Common”,这也是“Common”公司库的名称。我有一个WCF服务运行并引用了两个具有以下名称空间的类库: WCF服务:Common.Services 应用域层:通用.Domain 公共库:CompanyName.Common 使用这个命名,它可以编译得很好,但是当我使用WCF测试客户端使用服务时,它会说Company.Common不包含域是否缺少程序集引用 Company.Common确实不包含嵌套的域命名空间。
- WCF服务:Common.Services
- 应用域层:通用.Domain
- 公共库:CompanyName.Common
Company.Common
不包含域
是否缺少程序集引用
Company.Common
确实不包含嵌套的域
命名空间。有单独的Common.Domain
,但不应该嵌套,所以
如果我在另一个已经引用CompanyName.Common
名称空间的客户端(例如web应用程序)中使用该服务,则不会重用该类型,因为名称空间变得混乱
使用VisualStudio,我可以查看客户端上的两个引用程序集,它们显示了正确的结构。据我所知,WCF
似乎不喜欢名称空间
我想没有其他人遇到过这种情况?当涉及到冲突的名称空间,甚至是作为不同的web服务端点公开的类时,WCF会有很多问题。例如,它将导致空的service Reference.cs文件。在任何情况下,一个好的建议是将名称空间重命名为有意义的名称空间,或者将其分解为除“Common”之外的更多有意义的名称空间 你把你所有的字体名称都拼出来了吗?也许可以尝试在它们前面加上
global::
。也许可以覆盖WCFProxyGenerator中的某些内容?