Search Wiki:
The Managed Extensibility Framework (MEF) provides developers with a tool to easily add extensibility to their applications and with minimal impact on existing code. The application developer can define extension points according to the functionality required of an extension, while the extension developer uses those points to interact with the application.

MEF enables this extensibility to take place without creating a hard dependency in either direction. Applications can be extended at run time without recompilation, and extensions can be used by multiple applications sharing the same extension requirements. MEF also allows an application to delay the loading of an extension while still examining its metadata, enabling efficient traversal of large catalogs of extensions.

For more information, download the community technical preview (CTP) archive containing binaries, samples, and documentation!

One of the goals of the CTP is to get early feedback from the community. We'd love to hear from you - let us know what you think on the forum.
Last edited Jun 5 at 12:08 AM  by mtrofin, version 9
Comments
Rajiv wrote  Jun 5 at 4:49 AM  
Kudos

brettryan wrote  Jun 18 at 6:05 AM  
This certainly looks interesting, I'm wondering how this relates to both P&P Composite WPF (formerly Prism) and the P&P Unity dependancy injection container. Are there distinct use cases for Composite WPF and MEF or are the two projects blurred in terms of goals?

mnmr wrote  Jun 24 at 1:37 PM  
I'd like to second brettryan's comment.. where does this project fit in the broader landscape of existing DI/IoC frameworks?

gblock wrote  Jun 27 at 8:36 PM  
@mnmr, @brettryan

MEF is focused on application extensibility. It uses DI as a strategy for composing the different extensions, however it is not in itself a generic DI container. Composite Application Guidance for WPF is a set of guidance for building Composite Applications in WPF. While it does have a module loading facility for extensibility, the type of extensibilty it offers is very specific for composite applications.

Conceptually MEF should be able to live side by side with the Composite Application Library (CAL) included with the guidance. p&p is going to explore how the two can work together. Would you imagine needing this? If so, why?

As far as the use cases, I would say.

1. If you are looking to build a composite application with WPF, use Composite WPF.
2. If you are looking to build an application with built in extensiblity points that can easily be discovered, and which supports discovery of extensions, then look to MEF

Thanks
Glenn


gmelnik wrote  Jul 5 at 2:05 AM  
...and 3. If you are building a loosely-coupled application and looking for looking for a generic DI container to delegate the responsibility of creating/resolving the objects as needed, use Unity (http://msdn.microsoft.com/unity).

wmpjohnston wrote  Jul 21 at 12:28 AM  
@Glenn
I'd really like to see some guidance from P&P on building WPF apps with MEF. Is this on P&P's radar? My understanding is that MEF streamlines add-in management and DI for Windows apps? BTW, congrats on the new job.

Updating...
Page view tracker