8

少し誤解があります。IDependencyResolver を実装すると、プロジェクトのすべての部分で DI を使用できるということになります。DefaultControllerFactory から継承しなくても、依存関係を登録するコントローラーを構築できますか?

編集:これらすべてのBrad Wilson の投稿に目を通すことをお勧めします。
また、この投稿は役に立ちます。

4

1 に答える 1

6

最初に衒学者のメモ。インターフェイス(IDependencyResolver)から継承することはできませんが、実装することを意味していると思います。

つまり、どちらかを使用するか、両方を使用しないかを選択できます。したがって、リゾルバーを設定している場合は、コントローラーファクトリを用意する必要はありません。その逆も同様です。

私は、castle-windsorを使用するmvcでDefaultControllerFactoryのみを使用しました。Castle-windsorも使用している場合は、IDependencyResolverを使用する際の一方の緩みに注意する必要があります。リリース方法はありませんが、おそらくこれを回避する方法があります。

ninjectunityIDependencyResolverなどの他のフレームワークでは、IDependencyResolverが望ましい場合があります。

于 2012-12-20T08:30:36.567 に答える