インターフェイスをエクスポート用にマークして、すべての派生クラスをインポートできるようにすることはできますか?
[Export( typeof( IMyInterface ) )]
public interface IMyInterface { ... }
[Import( typeof( IMyInterface ) )]
private readonly ICollection<IMyInterface> m_Concretes = new Collection<IPlugin>();
IMyInterface
この例でどのクラスが実装されているかわかりません。[Export]
クラス自体は MEF について何も知らず、属性を使用しません。
すべてのクラスにマークを付けない限り、[Export]
うまくいかないようです。