A
ある意味でプラグインを使用するクラス(静的クラスではない)があるとしましょう。MEFを使用してこれらのプラグインを管理し、ユーザーがパーツカタログを追加するためのメソッドを追加します。使用例:
var myA = new A();
myA.LoadPlugins(new DirectoryCatalog("path/to/plugins"));
myA.DoStuffWithPlugins();
A
クラスと同じ名前空間B
。B
また、MEFを使用してプラグインを管理し、独自のを持っていCompositionContainer
ます。ユーザーがのプラグインを操作したい場合は、のプラグイン管理メソッドB
を使用する必要があります。B
B
上記のように使用されA
ます。
私の質問は、これは悪いですか?名前空間にプラグインをロードするための2つの別々の場所があることに注意する必要がありますか?それが悪い場合、代替案は何ですか?