ここに問題があります...たとえば、MEFのディレクトリカタログを使用し、some.dllとsome.dllのコピーがある場合、同じタイプを定義している場合でも、エクスポートが2倍になります。解決する方法はありますかこれ?
編集:問題はこの特定の問題ではありません。これは実際の問題の抽象的な例です。たとえば、「extensions」フォルダがあり、手動でインポートする方法がある場合は、次のようになります。扱いやすい。
ここに問題があります...たとえば、MEFのディレクトリカタログを使用し、some.dllとsome.dllのコピーがある場合、同じタイプを定義している場合でも、エクスポートが2倍になります。解決する方法はありますかこれ?
編集:問題はこの特定の問題ではありません。これは実際の問題の抽象的な例です。たとえば、「extensions」フォルダがあり、手動でインポートする方法がある場合は、次のようになります。扱いやすい。
FilteredCatalog
(コア MEF ディストリビューションの一部ではありません)でこれを行うことができます。ここで例を参照してください: http://mef.codeplex.com/wikipage?title=Filtering%20Catalogs
内部カタログから選択するのではなく、 をWhere
使用できますDistinct
。ComposablePartDefinition
s が等しいかどうかを比較する最も簡単なオプションは使用することですToString
が、にキャストするReflectionComposablePartDefinition
こともオプションです。
HTH、ニック
これを解決する方法はありますか?
次の 2 つのオプションが思い浮かびます。