ASP.NET プロバイダー モデルは、ある機能の個別の実装を Web アプリケーションに "プラグイン" できるという問題を解決する優れたテクノロジでした。プロバイダー モデルは一般に、構成を必要とする実装が少し面倒なので、最小限に抑えます。
IOC は、アプリケーションの各レベルで懸念事項を確実に分離する優れた方法であるため、すべてのコンポーネントの単体テストをサポートするために広く使用することをお勧めします。
Web アプリケーションが IOC コンテナーを使用している場合、プロバイダー モデルも使用するのは間違っているようです。なぜなら、既に抽象化されているものを抽象化して、2 つのレベルの複雑さを生み出しているように見えるからです (おそらく既存のプロバイダーを除いて - 私が話していることです)。カスタム プロバイダーの作成)。
(詳細については、私のブログ投稿を参照してください: http://healthedev.blogspot.com/2011/12/making-custom-built-applications.html )
私は IOC に AutoFac を使用しており、「構成のオーバーライド」を許可することが可能であるため、プロバイダー モデルが提供する同じソリューションを満たすための良い代替手段のように思えますが、MEF がこの要件をどのように満たすかについてはよくわかりません。私が行方不明になっているものが他にある場合は?
ASP.NET MVC Web アプリケーションをゼロから設計でき、パッケージ バージョンを販売しなければならないという要件がある場合、再コンパイルする必要なく、他のユーザーが特定のビットのデータ アクセスを "プラグイン" できるようにするにはどうすればよいでしょうか?あなたはそれを実装しますか?