3

Managed Extensibility Frameworkは、スタンドアロン プロジェクト (現在は .NET 3.5 を対象) であり、.NET 4.0 フレームワークの一部でもあります。

MEF パーツを含む .NET 3.5 をターゲットとするアセンブリを作成するとします。これらのアセンブリは、スタンドアロン バージョンの を参照しSystem.ComponentModel.Composition.dllます。

ここで、.NET 4.0 をターゲットとする MEF 対応アプリケーションを作成するとします。このアプリケーションはSystem.ComponentModel.Composition.dll、.NET 4.0 フレームワークに付属する を参照します。このアプリケーションで前述の MEF パーツを使用できますか?

4

1 に答える 1

9

残念ながら、System.ComponentModel.Composition.dll の 3.5 バージョンは codeplex ドロップをビルドすることによってのみ生成でき、公式の 4.0 バージョンと同じキーで署名されていないため、CLR は両方のアセンブリをロードして処理するため、これは機能しません。 2 つの異なる属性としての属性。そのため、アプリケーションが System.ComponentModel.Compsition.dll の .Net 4.0 バージョンを使用し、Catalog/Container を構築すると仮定すると、.Net 4.0 バージョンの属性でマークされたパーツのみが検索されます。

于 2009-12-24T16:08:30.137 に答える