I’m working on a sample project that needs to be able to process each file in a folder differently based on the type of file. I wanted to build it using a plugin model, and decided this might finally be a reason to learn more about MEF. I spun up a new project in Visual Studio 2010, but for the life of me couldn’t find the System.ComponentModel.Composition.dll that contains the MEF classes.
Turns out the project I started was targeting the .NET Framework 3.5 runtime. I changed it to the .NET 4.0 Framework, and voila, System.ComponentModel.Composition.dll now shows up in the Add References dialog.
I feel like an idiot, but I spent probably 30-40 minutes looking for that sucker.
FYI, its here (at least on my box):
C:\Program Files (x86)
\Reference Assemblies
\Microsoft
\Framework
\.NETFramework
\v4.0
\System.ComponentModel.Composition.dll
OR
C:\Program Files (x86)
\Reference Assemblies
\Microsoft
\Framework
\.NETFramework
\v4.0
\Profile
\Client
\System.ComponentModel.Composition.dll
FYI