Just in case someone stumbles upon this thread, the above answer is outdated. PartMetadata is used in the implementation of open-generics (and possibly other places I am not aware of).
When using open generics to export a part, two keys are added to the part's metadata dictionary:
- "System.ComponentModel.Composition.IsGenericPart" - set to "true" for open generics
- "System.ComponentModel.Composition.GenericPartArity" - set to the number of type parameters in the generic part.
These entries are handled internally by MEF, so there's no special need to know this unless you're trying to do some low-level stuff.