9

私が見つけた例では、コントローラがデータ アクセス レイヤのリポジトリ クラスを直接使用する 2 レイヤ アーキテクチャを使用しています。ここまたはここを参照してください。

コンポーネントを使用するサービスまたはビジネス ロジック層がある場合、データ アクセス層からコンポーネントをどこに登録しますか? データ アクセス層は、理想的にはユーザー インターフェイス層から参照されるべきではありませんよね? したがって、Application_Start は適切な場所ではありません。

より良い方法は何でしょうか?

ありがとうございました!

4

1 に答える 1

7

使用したい実装について何かを知る必要があります。通常、これを行うには 3 つの方法があります。

  1. Autofac が使用するコンパイル時
  2. Castle Windsorが実行できる事前定義された構成ファイルからの実行時
  3. 動的構成での実行時

Autofac にはいくつかの選択肢があります

  1. Application_Start ですべてを結び付ける
  2. ファクトリ パターンを実装し、必要なコンポーネントを登録する別のコンポーネントに責任を与えます。

#2 については、IoC フレームワークがシステムと疎結合されるように IContainer インターフェイスのようなものを実装します。次に、データ アクセスの実装でそのインターフェイスを使用して、必要なコンポーネントを登録します。

于 2008-11-27T19:03:40.243 に答える