私は自分のプロジェクトをどのように設定するべきかを明確にするために助けが必要です。次のように私のソリューションの構造は次のとおりです。ドメイン駆動型デザインクラスへのアクセスWCFサービスのライブラリ
Company.DataTransferObjects
--AdminDTO.cs
--CustomerDTO.cs
Company.DataTransferObjects.Helpers
Company.Infrastructure.DomainServices
--Admin
---AdminService.cs
--Customer
--CustomerService.cs
Comapny.Infrastructure.Repositories
--Admin
---AdminRepository.cs
--Customer
---CustomerRepository.cs
Company.Domain
--Admin
---Admin.cs
---IAdminRepository.cs
--Customer
---Customer.cs
---ICustomerRepository.cs
Company.WebServices
--WebApi.cs
--IWebAPI.cs
次のように私の質問は以下のとおりです。
1)私のセットアップはあなたに右見ていますか?
2)DTO。 Webサービスの観点から、DTOはどこに作成されるべきですか? 独立したクラスライブラリにDTOを作成し、WebServiceから を参照するか、それともWebサービスプロジェクトの一部であるべきですか?
また、私のDTOが私のドメインオブジェクトとどのようにやりとりするべきかはわかりません。 誰かがプログラムの流れの観点からその目的を説明してください。具体的には、WCFサービスをどのように操作するのかについて説明できますか?
3)ドメインサービス。私はまだ、ドメインサービスの目的の周りに私の心を包み込むのに苦労しています。これは、データベースには到達しておらず、直接アクセスできないリポジトリメソッドを必要とする操作上の機能を公開しているのでしょうか? つまり、ドメインサービスは複数のリポジトリメソッドを操作するメソッドですか?したがって、WCFサービスがリポジトリメソッドを介してアクセスできるデータを呼び出している場合は、その処理が必要です。しかし、複数のリポジトリメソッドの結果であるデータが必要な場合、これはドメインサービスを介して行う必要がありますか?
4)ファサードパターンはDDDアーキテクチャのどこに適合しますか?
私の混乱を許してください、私は理解しようとしています。 WCFサービスからアクセスする必要があることを「何を」教えてもらうと、深刻な助けになります。
ありがとうございます!
ありがとうございました。したがって、私のWCFプロジェクトは私のドメインサービスまたは私のドメイン(またはその両方)を参照するでしょうか? –
あなたのドメインサービス(それらのためのインターフェイスは最小限)は、ドメインモデルプロジェクトに属している必要があります。 WCFプロジェクトには、必要なもの、つまり間違いなくドメインプロジェクト、具体的な実装もされている他のプロジェクトも参照する必要があります。 – Paul