私のアプリにはプリズム/ mvvm/mefを使用し、ViewExport(Region)でマークされたすべてのビューを読み込むとうまくいきます(StockTraderRI AutoPopulateExportedViewsBehaviourを使用しています)。MEFを使用してクラスのグループを初期化するにはどうすればよいですか?
今、このランタイムルックアップ機能を使用して、他のバックグラウンドクラスを初期化したいと考えています。
は、私はインターフェイス
public interface ITable
{
}
を持って、私は、このインターフェイスから派生するクラスの多くを得たと言います。
これらの派生クラスを何らかの形でマークし、実行時にMEFを作成してリストやコンテナに追加する方法はありますか?
どこにも表示されていない地域のように、私は期待していますか?私はMEFでこれをどのように達成するでしょうか?
しかし、MEFはどのようなものがどのコレクションに属しているかをどのように知っていますかジェネリックタイプでは? – Sam
はい実際には、異なるクラスは[Export(typeable(ITable))]で装飾され、MEFはコレクションを満たすためにジェネリック型を継承または対応するクラスを探し、インスタンスを作成してコレクションに追加します。 –