2010-12-08 11 views
2
MEFを使用すると、プラグインフォルダに新しいプラグイン( DLLsを含む DLLs)を追加した後、 DirectoryCatalogでリフレッシュを呼び出すとコンテナが更新され(再構成が許可されている場合)、新しい追加されたプラグインにアクセスできるようになります。

DirectoryCatalogの使用時に動的にパーツ(DLL)を変更する

私の質問は、DLLpart)を動的に置き換える必要がある場合です。

私はこれを試しましたが、partsはすべてMEFでロック(書き込み禁止)されており、置き換えられません。

答えて

3

DLLをロックしている.NETです。 AppDomainからアセンブリをアンロードすることはできず、ロードされている間は通常はロックされます。 AppDomainのシャドウコピーを有効にすると、DLLを削除できます。それらはまだロードされますが、DirectoryCatalogはRefreshを呼び出してカタログから削除したときに削除されたことを確認します。

関連する問題