Visual Studio で複数のサービス参照が名前空間を共有できるようにするために、Reference.cs ファイルを手作業でコーディングする以外に可能な方法はありますか?
同じソリューションの一部である複数のサービスを利用するクライアント アプリケーションを開発しています。Microsoft が MS-Project Server 用に持っている Project Service Interface (PSI) API のラインに沿ったもの。次のように、個々のサービス参照ごとに異なる名前空間を使用するのではなく、
MyProject.ProjectService.ProjectServiceClient
MyProject.ResourceService.ResourceServiceClient
MyProject.TimesheetService.TimesheetServiceClient
次のように、それらすべてを 1 つの名前空間に入れることができればよいでしょう。
MyProject.Services.ProjectServiceClient
MyProject.Services.ResourceServiceClient
MyProject.Services.TimesheetServiceClient
これに伴い、共通のコードを共有できるようになります。たとえば、これらのサービスのいずれかが同じデータ コントラクトを公開した場合などです。現在、クライアントが使用できるコードを記述したい場合、サービス プロキシごとに個別のバージョンを作成する必要があります。これは、共通のコントラクトが 3 つの異なる名前空間に存在するためです。私がどこに行くのか分かりますか?
可能です?
アップデート
私がサービス コードにアクセスできないと仮定しましょう (私にはありません)。つまり、共有クラス ライブラリはオプションではありません。この場合、私の選択は何ですか?