私たちは .NET 4.5 を使用していますが、1 か月前に突然機能しなくなるまで、MEF でジェネリック エクスポートを開くことに問題はありませんでした。CI サーバーでの 70 のテストが赤くなり、コンテナー内のパーツの欠落が原因であることがわかりました。
変だと思ったので、次のテスト コードを書きました。
var catalog = new TypeCatalog(typeof(Impersonator<>), typeof(Cache<>));
var parts = catalog.Parts;
しかし、開いているジェネリック型はどれもカタログに登録されないようです。 Parts
はTypeCatalog
ウィズTypes = <Empty>
です。
通常、この SO questionのように、属性を使用して宣言的なエクスポートによってこれを行いますが、代替手段はどれも機能していないようです。
どんなアイデアでも大歓迎です。