2010-12-13 4 views
2

.NETアプリケーション用のアドオンマネージャはありますか?私はC#またはVB.Netを使って自分のプログラムの「コア」を構築して、何らかのアドオンマネージャー/結合スクリプトとGUIを使って拡張できるようにしたいと思います。.NETアプリケーションのアドオンマネージャーですか?

そこに何かそんなことはありますか?

答えて

2

Microsoftは、これを行うために組み込まれたManaged Extensibility Framework(MEF)を持っています。 MEFは.NET 4の一部として利用できます。CodePlexサイトから:

管理拡張フレームワークは、拡張可能なアプリケーションの作成を簡略化します。 MEFは、アプリケーション拡張をロードするために活用できる検出機能と合成機能を提供します。

MEFはどのような問題を解決しますか?

MEFは、ランタイム拡張性の問題 の簡単な解決策を示しています。 プラグインモデルをサポートしたいアプリケーション インフラストラクチャをゼロから作成する必要がありました。それらの プラグインは多くの場合アプリケーション固有の であり、複数の 実装では を再利用できませんでした。

  • MEFは、ホストアプリケーション は自分自身を公開し、外部 拡張を消費するため 標準的な方法を提供します。拡張機能は、 という性質によって、 の異なるアプリケーションの間で再利用できます。しかし、 の拡張子は、 アプリケーション固有の方法で の実装も可能です。拡張子 自体はお互いに依存する可能性があります とMEFは を正しい順序で一緒に結んでいることを確認します (別のことは を心配する必要はありません)。
  • アプリケーションは、 アプリケーションで、利用可能な拡張子 を見つけてロードするための一連の検出方法を提供しています。
  • MEFは豊か 照会およびフィルタリングが容易のadditonal メタデータと タギング機能拡張を可能に
関連する問題