1

私がこの種の構造を持っているとしましょう:

|
|-Plugins
         |-Plugin1.cs
         |-Plugin2.cs
         |-Plugin3.cs
|-PluginBase.cs
|-PluginList.cs

Pluginsフォルダ内の各クラスは から拡張されPluginBase.csます。

利用可能なプラグインのリストをエクスポートして、アプリがそれを使用してユーザーが必要なPluginList.csものを選択できるようにする必要があります。

C# は初めての経験なので、これがどのように機能するのかわかりません。

オンラインで検索すると、Managed Extensibility Framework に関する情報が見つかりましたが、これが必要かどうかはわかりません。

私の非常に生のアイデアは、Plugin ディレクトリをスキャンしてそれらを一覧表示することですが、C# が Java のクラスと同等かどうかわからないので、Classまだ試していません。

モバイル アプリケーションの話なので、できるだけ高速にしたいので、このスキャン方法は最適ではないかもしれません。

何か案が?

編集:

したがって、最善の方法は MEF2 を使用することですが、Visual Studio ではアセンブリをプロジェクトに追加できないため、機能させることができません (Nuget で試し、手動で dll を追加してみました)。

MEF2に代わるものはありますか?

4

1 に答える 1