Я немного запутался, по каким правилам я должен следовать. Я обнаружил, что проблема возникает из-за того, что текущее имя приложения просто «Общее», что также является названием «Общей» библиотеки компании. У меня есть служба WCF, которая работает и ссылается на пару библиотек классов со следующими пространствами имен:
- Служба WCF: Общие услуги
- Уровень домена приложения: Common.Domain
- Общая библиотека: CompanyName.Common
При таком именовании он прекрасно компилируется, однако, когда я использую сервис с тестовым клиентом WCF, он говорит, что Company.Common
не содержит Domain
Вы пропустили ссылку на сборку?
Company.Common
действительно не содержит вложенного пространства имен Domain
. Существует отдельный Common.Domain
, но он не должен быть вложенным, так что ...?
Если я использую службу в другом клиенте (например, в веб-приложении), который уже ссылается на пространство имен CompanyName.Common
, он не будет повторно использовать тип, поскольку пространства имен перепутаны.
Используя Visual Studio, я могу просмотреть две ссылочные сборки на клиенте, и они показывают правильную структуру. Из того, что я могу сказать, просто кажется, что WCF
не любит пространства имен.
Не думаю, что кто-то еще сталкивался с этим?