2009-05-27 5 views
1

nHibernate(およびリポジトリパターン)を使用して、ファイル/フォルダをレイアウトするにはどうしたらいいですか?nHibernateを使用すると、VS.NETソリューションでファイルをどのようにレイアウトするのですか?

私はDDDにに行く、と私は私のデータベーステーブルにマップするクラスの多くを持つことになりますので、リポジトリのパターンを使用して、似たインターフェースなどを継承リポジトリの多くは

何かしています:

/root/ 
/root/web.config 
/root/class/user.cs 
... 
/root/repository/UserRepository.cs 

/root/interface/iRepository.cs 

答えて

1

私にとっては、デフォルトのプロジェクト構造は以下の通りです:

  • Solution.Core

    • 有界コンテキスト(例えば製品、注文、会計) は、エンティティが含まれており、値が
      • サービス(リポジトリ、サービスなどのためのインタフェースが含まれています)
  • Solution.DataContracts(のためのオブジェクトDTO-s)

  • Solution.Infrastructure(配管コードを含む)
  • Solution.Configuration(インフラストラクチャ構成が含まれています。 NHマッピング、IOCの登録、慣習など)
  • Solution.Services(NHibernateのリポジトリなどのようなサービスの実装を含む)
  • Solution.Presentation(プレゼンターまたはコントローラを含む)
  • Solution.Web(ビューが含まれ、すべてをバンドル一緒に)

これはきれいにデカップリングされているように見えますが、サイクリック依存性が来るとデザイン上問題がある可能性があります。

1

「たくさんのリポジトリ」は、実際に集約ルートであることを再考する必要があること、またはあなたのドメインがまったく狂っていることを示唆しています。

関連する問題