0

非常に奇妙な問題があります。Microsoft Azure Worker ロールで作業しているときに、開いているジェネリック エクスポートがアセンブリ カタログによって検出されません。

アセンブリ カタログは、通常の非ジェネリック エクスポートを正常に表示できますが、開いているジェネリック エクスポートを表示しませんでした。

それ以外の場合は、Web ロールからエクスポートするときに、オープン ジェネリック エクスポートが検出され、問題なくインポートされました。

MEF 2.0 に組み込まれた .Net Framework 4.5 から nuget の Microsoft.Composition 2.0 に MEF を切り替えると、オープン ジェネリック エクスポートが正常に機能します。

これが MEF 2.0 で発生する理由の手がかりはありますか? これは Azure ワーカー ロールに関連するものですか、それとも MEF 2.0 ライブラリ自体の制限ですか?

問題を示すために、テスト クラウド プロジェクトを添付しました。プロジェクトを実行するには、VS 2012 と Azure SDK 2.0 が必要です。

プロジェクト リンク

4

1 に答える 1

0

何度か試行錯誤を繰り返した結果、こちらのcodeplex の Microsoft.Composition を使用すると、Azure ワーカーの下で非常にうまく機能することがわかりました。

私にとっては、MEF で直面したすべての問題の後、より信頼性の高い IOC 分散 Unity に切り替えることにしました。

于 2013-10-17T09:45:14.490 に答える