複数のプロジェクトを使用して、DI 用の IoC フレームワークを組み込んだ .NET (C#) 用の空のソリューション スタックを作成した人はいますか? 私は何ヶ月もの間、次のような優れた再利用可能なスタックを作成するのに苦労してきました:
- MVC UI Web アプリ
- 空の BLL プロジェクト (後で実際のエンティティを追加します)
- 空の DAL プロジェクト (後で実際の daab クラスを追加します)
- 参照/検索データ層
- IoC フレームワークを含む
- エンティティ レイヤーを介して DAL に到達するか、すべてのインターフェイスを介して層を参照/検索することができるホーム コントローラーでの DI の使用例
- UI レイヤーで具象クラスのハード参照を設定してはなりません
私はこれを数回試みましたが、常に #6 でハングアップし、スタックの構造に基本的なものが欠けています。誰かがこれを行うことができ、それがどのように構造化されているかを示すサンプルソリューションを持っていますか? 一日中スタックを作成して IoC フレームワークを追加することはできますが、UI レイヤーに具体的な参照が追加されないように構造化することは完全に失敗します。オブジェクトのインターフェイス/具体的な解決は、他にどのように行うことができますか?
確かにあなたの学者の中にはこれをつぼみに挟んでいる人もいます。この啓発の一部を私と共有してください:-)
ps - Mark Seeman の本を 2 回以上読んだことがあります。Composition Root の概念は理解していますが、NTier ソリューションで使用されているのを見たことがなく、理論をうまく実装できていません。
私が探しているのは、出発点として使用できる複数のプロジェクトの具体化されたソリューション スタックです。コンポジションルートをうまく実装し、言う代わりに実行することでSOLIDの原則を教えるために使用できるもの。すべてを実現するソリューションです。この質問を参照してください。