Hlavní menu
Nástroje |
UvodDoKomponent.MEF HistoryHide minor edits - Show changes to output 24 September 2015, 15:10
by
- Changed lines 40-41 from:
Full MEF Architecture described [[MEFarchitecture | here]]. to:
MEF as seen on Fig. below, is divided into three main layers Container, Primitives and Attributed Programing Model. Each of these parts is described in Full MEF Architecture [[MEFarchitecture | here]]. 27 March 2015, 13:56
by
- Changed lines 3-4 from:
to:
** [[UvodDoKomponent.MEF#model| MEF model]] ** [[UvodDoKomponent.MEF#example| MEF Examples]] ** [[UvodDoKomponent.MEF#architecture| MEF Architecture]] ** [[UvodDoKomponent.MEF#more| More about MEF]] ** [[UvodDoKomponent.MEF#literature| Literature]] * [[UvodDoKomponent.MEF#practical | Practical section]] 27 March 2015, 13:22
by
- Added lines 1-4:
* [[UvodDoKomponent.MEF#theoretical | Theoretical section]] ** [[UvodDoKomponent.MEF#intro| Introduction]] 27 March 2015, 13:14
by
- Changed lines 25-28 from:
--> 1. [[MEFWizardExample | Evil Wizard example ]] - basic usage of MEF. --> 2. [[MEFExample | Catalogs example ]] - more *Catalog* focused --> 3. [[Hello World example-> http://www.codeproject.com/Articles/56635/Managed-Extensibility-Framework]] - [@ External *Codeproject* site! @] to:
-> 1. [[MEFWizardExample | Evil Wizard example ]] - basic usage of MEF. -> 2. [[MEFExample | Catalogs example ]] - more *Catalog* focused -> 3. [[Hello World example-> http://www.codeproject.com/Articles/56635/Managed-Extensibility-Framework]] - [@ External *Codeproject* site! @] 27 March 2015, 13:13
by
- Changed lines 1-3 from:
h1. [[#proc]] Theoretical section h2. 1. [[#Introduction]] Introduction to:
h1. [[#theoretical]] Theoretical section h2. [[#intro]] 1. Introduction Changed lines 9-49 from:
* [@System.Compostion.* @] is a lightweight version of MEF, which has been optimized for static composition scenarios and provides faster compositions. It is also the only version of MEF that is as a portable class library and can be to:
* [@System.Compostion.* @] is a lightweight version of MEF, which has been optimized for static composition scenarios and provides faster compositions. It is also the only version of MEF that is as a portable class library and can be used on phone, store, desktop and web applications. h2. [[#model]] 2. MEF model Roughly speaking, MEF's core is comprised of a catalog and a CompositionContainer. A catalog is responsible for discovering extensions and the container coordinates creation and satisfies dependencies. * *Parts* (i.e. ''Component'') are the cornerstone of MEF. A composable Part offers up one or more *Exports*, and may also depend on one or more externally provided services or *Imports*. It is throught this relationship between what a part needs, and what a part can provide that the composition takes place. Service definition is done via ''Contracts'' (e.g. an ''Interface'' or predefined data type like string). * *Containers* perform the actual composition between parts by matching *Exports* with *Imports*, that is, service providers with service consumers. * *Catalogs* (i.e. ''Component Repository'') are in charge of part discovery. Using different built-in catalogs, an application can find parts within a given assembly or a given folder at runtime. *Containers* use *catalogs* to find out which parts they can use during composition. -> %width=500px%Attach:mef.png ----> Longer description [[here -> http://mef.codeplex.com/wikipage?title=Overview&referringTitle=Home]] (codeplex wiki). h2. [[#example]] 3. MEF Examples --> 1. [[MEFWizardExample | Evil Wizard example ]] - basic usage of MEF. --> 2. [[MEFExample | Catalogs example ]] - more *Catalog* focused --> 3. [[Hello World example-> http://www.codeproject.com/Articles/56635/Managed-Extensibility-Framework]] - [@ External *Codeproject* site! @] h2. [[#architecture]] 4. MEF Architecture Full MEF Architecture described [[MEFarchitecture | here]]. -> Attach:arch1_thumb.png ---> *Fig*: _Different layers in the Managed Extensions Framework._ h2. [[#more]] 5. More about MEF Are you interested to know more about MEF (e.g. "MEF vs standard IoC Container", "MEF Visualizer", "Why to use MEF", "More learing materials" etc.) click [[MEFmore | here]] . h2. [[#literature]] 6. Literature *[[Dependency Injection in .NET -> http://www.amazon.com/Dependency-Injection-NET-Mark-Seemann/dp/1935182501]] *[[Programming .NET Components, 2nd Edition -> http://www.amazon.com/Programming-NET-Components-Juval-Lowy/dp/0596102070/]] *[[Pro .NET 1.1 Remoting, Reflection, and Threading -> http://www.amazon.com/Pro-NET-Remoting-Reflection-Threading/dp/1590594525/]] h1. [[#practical]] Practical section Parking lot example writen in C# without using MEF [[ParkovistePlain]]. Implementation Attach:ParkingLot_Plain.zip Parking lot example writen in C# using MEF Dependency Injection [[ParkovisteMEF]]. Implementation Attach:ParkingLot_MEF.zip 27 March 2015, 13:07
by
- Changed lines 1-3 from:
h1. Theoretical section h2. 1. Introduction to:
h1. [[#proc]] Theoretical section h2. 1. [[#Introduction]] Introduction Changed lines 9-48 from:
* [@System.Compostion.* @] is a lightweight version of MEF, which has been optimized for static composition scenarios and provides faster compositions. It is also the only version of MEF that is as a portable class library and can be used on phone, store, desktop and web applications. h2. 2. MEF model Roughly speaking, MEF's core is comprised of a catalog and a CompositionContainer. A catalog is responsible for discovering extensions and the container coordinates creation and satisfies dependencies. * *Parts* (i.e. ''Component'') are the cornerstone of MEF. A composable Part offers up one or more *Exports*, and may also depend on one or more externally provided services or *Imports*. It is throught this relationship between what a part needs, and what a part can provide that the composition takes place. Service definition is done via ''Contracts'' (e.g. an ''Interface'' or predefined data type like string). * *Containers* perform the actual composition between parts by matching *Exports* with *Imports*, that is, service providers with service consumers. * *Catalogs* (i.e. ''Component Repository'') are in charge of part discovery. Using different built-in catalogs, an application can find parts within a given assembly or a given folder at runtime. *Containers* use *catalogs* to find out which parts they can use during composition. -> %width=500px%Attach:mef.png ----> Longer description [[here -> http://mef.codeplex.com/wikipage?title=Overview&referringTitle=Home]] (codeplex wiki). h2. 3. MEF Examples --> 1. [[MEFWizardExample | Evil Wizard example ]] - basic usage of MEF. --> 2. [[MEFExample | Catalogs example ]] - more *Catalog* focused --> 3. [[Hello World example-> http://www.codeproject.com/Articles/56635/Managed-Extensibility-Framework]] - [@ External *Codeproject* site! @] h2. 4. MEF Architecture Full MEF Architecture described [[MEFarchitecture | here]]. -> Attach:arch1_thumb.png ---> *Fig*: _Different layers in the Managed Extensions Framework._ h2. 5. More about MEF Are you interested to know more about MEF (e.g. "MEF vs standard IoC Container", "MEF Visualizer", "Why to use MEF", "More learing materials" etc.) click [[MEFmore | here]] . h2. Literature *[[Dependency Injection in .NET -> http://www.amazon.com/Dependency-Injection-NET-Mark-Seemann/dp/1935182501]] *[[Programming .NET Components, 2nd Edition -> http://www.amazon.com/Programming-NET-Components-Juval-Lowy/dp/0596102070/]] *[[Pro .NET 1.1 Remoting, Reflection, and Threading -> http://www.amazon.com/Pro-NET-Remoting-Reflection-Threading/dp/1590594525/]] h1. Practical section Parking lot example writen in C# without using MEF [[ParkovistePlain]]. Implementation Attach:ParkingLot_Plain.zip Parking lot example writen in C# using MEF Dependency Injection [[ParkovisteMEF]]. Implementation Attach:ParkingLot_MEF.zip to:
* [@System.Compostion.* @] is a lightweight version of MEF, which has been optimized for static composition scenarios and provides faster compositions. It is also the only version of MEF that is as a portable class library and can be 27 March 2015, 12:57
by
- Changed lines 25-28 from:
-> !!! 1. [[MEFWizardExample | Evil Wizard example ]] - basic usage of MEF. -> h3. 2. [[MEFExample | Catalogs example ]] - more *Catalog* focused -> h3. 3. [[Hello World example-> http://www.codeproject.com/Articles/56635/Managed-Extensibility-Framework]] - [@ External *Codeproject* site! @] to:
--> 1. [[MEFWizardExample | Evil Wizard example ]] - basic usage of MEF. --> 2. [[MEFExample | Catalogs example ]] - more *Catalog* focused --> 3. [[Hello World example-> http://www.codeproject.com/Articles/56635/Managed-Extensibility-Framework]] - [@ External *Codeproject* site! @] 27 March 2015, 12:56
by
- Changed line 25 from:
-> h3. 1. [[MEFWizardExample | Evil Wizard example ]] - basic usage of MEF. to:
-> !!! 1. [[MEFWizardExample | Evil Wizard example ]] - basic usage of MEF. 27 March 2015, 12:56
by
- Changed lines 25-28 from:
--> h3. 1. [[MEFWizardExample | Evil Wizard example ]] - basic usage of MEF. --> h3. 2. [[MEFExample | Catalogs example ]] - more *Catalog* focused --> h3. 3. [[Hello World example-> http://www.codeproject.com/Articles/56635/Managed-Extensibility-Framework]] - [@ External *Codeproject* site! @] to:
-> h3. 1. [[MEFWizardExample | Evil Wizard example ]] - basic usage of MEF. -> h3. 2. [[MEFExample | Catalogs example ]] - more *Catalog* focused -> h3. 3. [[Hello World example-> http://www.codeproject.com/Articles/56635/Managed-Extensibility-Framework]] - [@ External *Codeproject* site! @] 27 March 2015, 12:55
by
- Changed lines 25-28 from:
h3. 1. [[MEFWizardExample | Evil Wizard example ]] - basic usage of MEF. h3. 2. [[MEFExample | Catalogs example ]] - more *Catalog* focused h3. 3. [[Hello World example-> http://www.codeproject.com/Articles/56635/Managed-Extensibility-Framework]] - [@ External *Codeproject* site! @] to:
--> h3. 1. [[MEFWizardExample | Evil Wizard example ]] - basic usage of MEF. --> h3. 2. [[MEFExample | Catalogs example ]] - more *Catalog* focused --> h3. 3. [[Hello World example-> http://www.codeproject.com/Articles/56635/Managed-Extensibility-Framework]] - [@ External *Codeproject* site! @] 27 March 2015, 12:54
by
- Added lines 1-2:
h1. Theoretical section 27 March 2015, 12:54
by
- Changed lines 42-46 from:
h1. Praktická část Příklad parkoviště napsané v C# bez použití MEF [[ParkovistePlain]] a výsledná implementace Attach:ParkingLot_Plain.zip Příklad parkoviště napsané v C# s použitím MEF [[ParkovisteMEF]] a výsledná implementace Attach:ParkingLot_MEF.zip to:
h1. Practical section Parking lot example writen in C# without using MEF [[ParkovistePlain]]. Implementation Attach:ParkingLot_Plain.zip Parking lot example writen in C# using MEF Dependency Injection [[ParkovisteMEF]]. Implementation Attach:ParkingLot_MEF.zip 06 March 2015, 15:05
by
- Changed lines 11-13 from:
* *Parts* (i.e. ''Component'') are the cornerstone of MEF. Parts known as *Exports* can provide services to other parts whilst parts known as *Imports* consume services from other parts. It is throught this relationship between what a part needs, and what a part can provide that the composition takes place. Service definition is done via ''Contracts'' (e.g. an ''Interface'' or predefined data type like string). to:
Roughly speaking, MEF's core is comprised of a catalog and a CompositionContainer. A catalog is responsible for discovering extensions and the container coordinates creation and satisfies dependencies. * *Parts* (i.e. ''Component'') are the cornerstone of MEF. A composable Part offers up one or more *Exports*, and may also depend on one or more externally provided services or *Imports*. It is throught this relationship between what a part needs, and what a part can provide that the composition takes place. Service definition is done via ''Contracts'' (e.g. an ''Interface'' or predefined data type like string). 06 March 2015, 14:27
by
- Changed lines 13-14 from:
* *Catalogs* (i.e. Component Repository) are in charge of part discovery. Using different built-in catalogs, an application can find parts within a given assembly or a given folder at runtime. *Containers* use *catalogs* to find out which parts they can use during composition. to:
* *Catalogs* (i.e. ''Component Repository'') are in charge of part discovery. Using different built-in catalogs, an application can find parts within a given assembly or a given folder at runtime. *Containers* use *catalogs* to find out which parts they can use during composition. 06 March 2015, 14:27
by
- Changed lines 13-14 from:
* *Catalogs* are in charge of part discovery. Using different built-in catalogs, an application can find parts within a given assembly or a given folder at runtime. *Containers* use *catalogs* to find out which parts they can use during composition. to:
* *Catalogs* (i.e. Component Repository) are in charge of part discovery. Using different built-in catalogs, an application can find parts within a given assembly or a given folder at runtime. *Containers* use *catalogs* to find out which parts they can use during composition. 06 March 2015, 14:25
by
- Changed lines 9-10 from:
h2. 2. How MEF works to:
h2. 2. MEF model 27 February 2015, 14:48
by
- Changed line 44 from:
Příklad parkoviště napsané v C# s použitím MEF [[ParkovisteMEF]] a výsledná implementace Attach:ParkovisteMEF.zip to:
Příklad parkoviště napsané v C# s použitím MEF [[ParkovisteMEF]] a výsledná implementace Attach:ParkingLot_MEF.zip 27 February 2015, 14:46
by
- Changed lines 42-43 from:
Příklad parkoviště napsané v C# bez použití MEF [[ParkovistePlain]] a výsledná implementace Attach:ParkovistePlain.zip to:
Příklad parkoviště napsané v C# bez použití MEF [[ParkovistePlain]] a výsledná implementace Attach:ParkingLot_Plain.zip 27 February 2015, 14:43
by
- Added lines 39-44:
h1. Praktická část Příklad parkoviště napsané v C# bez použití MEF [[ParkovistePlain]] a výsledná implementace Attach:ParkovistePlain.zip Příklad parkoviště napsané v C# s použitím MEF [[ParkovisteMEF]] a výsledná implementace Attach:ParkovisteMEF.zip 28 January 2015, 16:26
by
- Changed lines 2-3 from:
The *Managed Extensibility Framework* ([[MEF -> https://www.google.cz/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CCMQFjAA&url=http%3A%2F%2Fmsdn.microsoft.com%2Fcs-cz%2Flibrary%2Fdd460648%2528v%3Dvs.110%2529.aspx&ei=QgGgVN6XFMz7aPadgYgO&usg=AFQjCNF8DQdQojB0Aslm3_ImIUcjaS-n8w&sig2=rxSYq3UH2K8kdjt26fMAxw&bvm=bv.82001339,d.d2s ]]) is a composition layer for .NET that improves the flexibility, maintainability and testability of large applications. MEF can be used for third-party plugin extensibility, or it can bring the benefits of a loosely-coupled plugin-like architecture to regular applications (MEF support a ''plugin model''). to:
The *Managed Extensibility Framework* ([[MEF -> https://www.google.cz/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CCMQFjAA&url=http%3A%2F%2Fmsdn.microsoft.com%2Fcs-cz%2Flibrary%2Fdd460648%2528v%3Dvs.110%2529.aspx&ei=QgGgVN6XFMz7aPadgYgO&usg=AFQjCNF8DQdQojB0Aslm3_ImIUcjaS-n8w&sig2=rxSYq3UH2K8kdjt26fMAxw&bvm=bv.82001339,d.d2s ]]) is a composition layer for .NET that improves the flexibility, maintainability and testability of large applications. MEF can be used for third-party plugin extensibility, or it can bring the benefits of a loosely-coupled plugin-like architecture to regular applications (MEF support a ''Plugin Model''). 28 January 2015, 16:25
by
- Changed lines 2-3 from:
The *Managed Extensibility Framework* ([[MEF -> https://www.google.cz/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CCMQFjAA&url=http%3A%2F%2Fmsdn.microsoft.com%2Fcs-cz%2Flibrary%2Fdd460648%2528v%3Dvs.110%2529.aspx&ei=QgGgVN6XFMz7aPadgYgO&usg=AFQjCNF8DQdQojB0Aslm3_ImIUcjaS-n8w&sig2=rxSYq3UH2K8kdjt26fMAxw&bvm=bv.82001339,d.d2s ]]) is a composition layer for .NET that improves the flexibility, maintainability and testability of large applications. MEF can be used for third-party plugin extensibility, or it can bring the benefits of a loosely-coupled plugin-like architecture to regular applications (support a ''plugin model''). to:
The *Managed Extensibility Framework* ([[MEF -> https://www.google.cz/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CCMQFjAA&url=http%3A%2F%2Fmsdn.microsoft.com%2Fcs-cz%2Flibrary%2Fdd460648%2528v%3Dvs.110%2529.aspx&ei=QgGgVN6XFMz7aPadgYgO&usg=AFQjCNF8DQdQojB0Aslm3_ImIUcjaS-n8w&sig2=rxSYq3UH2K8kdjt26fMAxw&bvm=bv.82001339,d.d2s ]]) is a composition layer for .NET that improves the flexibility, maintainability and testability of large applications. MEF can be used for third-party plugin extensibility, or it can bring the benefits of a loosely-coupled plugin-like architecture to regular applications (MEF support a ''plugin model''). 28 January 2015, 16:25
by
- Changed lines 2-3 from:
The *Managed Extensibility Framework* ([[MEF -> https://www.google.cz/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CCMQFjAA&url=http%3A%2F%2Fmsdn.microsoft.com%2Fcs-cz%2Flibrary%2Fdd460648%2528v%3Dvs.110%2529.aspx&ei=QgGgVN6XFMz7aPadgYgO&usg=AFQjCNF8DQdQojB0Aslm3_ImIUcjaS-n8w&sig2=rxSYq3UH2K8kdjt26fMAxw&bvm=bv.82001339,d.d2s ]]) is a composition layer for .NET that improves the flexibility, maintainability and testability of large applications. MEF can be used for third-party plugin extensibility, or it can bring the benefits of a loosely-coupled plugin-like architecture to regular applications. to:
The *Managed Extensibility Framework* ([[MEF -> https://www.google.cz/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CCMQFjAA&url=http%3A%2F%2Fmsdn.microsoft.com%2Fcs-cz%2Flibrary%2Fdd460648%2528v%3Dvs.110%2529.aspx&ei=QgGgVN6XFMz7aPadgYgO&usg=AFQjCNF8DQdQojB0Aslm3_ImIUcjaS-n8w&sig2=rxSYq3UH2K8kdjt26fMAxw&bvm=bv.82001339,d.d2s ]]) is a composition layer for .NET that improves the flexibility, maintainability and testability of large applications. MEF can be used for third-party plugin extensibility, or it can bring the benefits of a loosely-coupled plugin-like architecture to regular applications (support a ''plugin model''). 28 January 2015, 16:13
by
- Changed line 11 from:
* *Parts* (i.e. ''Component'') are the cornerstone of MEF. Parts known as *Exports* can provide services to other parts whilst parts known as *Imports* consume services from other parts. It is throught this relationship between what a part needs, and what a part can provide that the composition takes place. Service definition is done via ''Contracts''. to:
* *Parts* (i.e. ''Component'') are the cornerstone of MEF. Parts known as *Exports* can provide services to other parts whilst parts known as *Imports* consume services from other parts. It is throught this relationship between what a part needs, and what a part can provide that the composition takes place. Service definition is done via ''Contracts'' (e.g. an ''Interface'' or predefined data type like string). 28 January 2015, 15:42
by
- Changed line 11 from:
* *Parts* (i.e. component) are the cornerstone of MEF. Parts known as *Exports* can provide services to other parts whilst parts known as *Imports* consume services from other parts. It is throught this relationship between what a part needs, and what a part can provide that the composition takes place. Service definition is done via ''Contracts''. to:
* *Parts* (i.e. ''Component'') are the cornerstone of MEF. Parts known as *Exports* can provide services to other parts whilst parts known as *Imports* consume services from other parts. It is throught this relationship between what a part needs, and what a part can provide that the composition takes place. Service definition is done via ''Contracts''. 28 January 2015, 15:42
by
- Changed line 11 from:
* *Parts* are the cornerstone of MEF. Parts known as *Exports* can provide services to other parts whilst parts known as *Imports* consume services from other parts. It is throught this relationship between what a part needs, and what a part can provide that the composition takes place. Service definition is done via ''Contracts''. to:
* *Parts* (i.e. component) are the cornerstone of MEF. Parts known as *Exports* can provide services to other parts whilst parts known as *Imports* consume services from other parts. It is throught this relationship between what a part needs, and what a part can provide that the composition takes place. Service definition is done via ''Contracts''. 28 January 2015, 15:02
by
- Changed lines 17-18 from:
------> Longer description [[here -> http://mef.codeplex.com/wikipage?title=Overview&referringTitle=Home]] (codeplex wiki). to:
----> Longer description [[here -> http://mef.codeplex.com/wikipage?title=Overview&referringTitle=Home]] (codeplex wiki). 28 January 2015, 15:02
by
- Changed lines 15-16 from:
-> Attach:mef.png to:
-> %width=500px%Attach:mef.png 28 January 2015, 14:51
by
- Changed lines 33-34 from:
Are you interested to know more about MEF (e.g. "MEF vs standard IoC Container", "MEF Visualizer") click [[MEFmore | here]] . to:
Are you interested to know more about MEF (e.g. "MEF vs standard IoC Container", "MEF Visualizer", "Why to use MEF", "More learing materials" etc.) click [[MEFmore | here]] . 28 January 2015, 14:35
by
- Changed lines 28-31 from:
Attach:arch1_thumb.png *Fig*: _Different layers in the Managed Extensions Framework._ to:
-> Attach:arch1_thumb.png ---> *Fig*: _Different layers in the Managed Extensions Framework._ 28 January 2015, 14:10
by
- Changed lines 33-59 from:
Are you interested to know more about MEF (i.e. "MEF vs standard IoC Container", "MEF Visualizer") click [[MEFmore | here]] . h2. 6. Why to use MEF [[10 reasons why to use MEF -> http://csharperimage.jeremylikness.com/2010/04/ten-reasons-to-use-managed.html]] h2. 7. Good explanations h3. Audio *[[Audio: MEF with Glenn Block -> http://www.hanselminutes.com/148/mef-managed-extensibility-framework-with-glenn-block]] [@IoC@], DI vs MEF h3. Code *[[Code: Barbarian Meets MEF -> http://www.barbarianmeetscoding.com/blog/2012/08/14/barbarian-meets-mef-managed-extensiblity-framework/]] *[[Code: Glenn Block - Building Composable Apps in .NET 4 with the Managed Extensibility Framework -> http://msdn.microsoft.com/en-us/magazine/ee291628.aspx]] Complete explanations of MEF capabilities *[[Code: Complete MEF Programming Guide -> https://mef.codeplex.com/wikipage?title=Guide&referringTitle=Overview]] h3. Video *[[Video: MEF Oleg Lvovitch and Kevin Ransom -> http://channel9.msdn.com/posts/NET-45-Oleg-Lvovitch-and-Kevin-Ransom-Managed-Extensibility-Framework-MEF-20]] Introduction, MEF 2.0 *[[Video: MEF Jan Steberl CZ -> http://channel9.msdn.com/Blogs/JanSteberl/Managed-Extensibility-Framework]] Introduction MEF - CZ h3. Presentation *[[Presentation: Lecture by Nuno Cancelo -> http://www.slideshare.net/NunoCancelo/give-more-life-to-your-application-extending-it-with-mef]] *[[Presentation: Lecture by Mohamed Meligy -> http://www.slideshare.net/Mohamed_Meligy/managed-extensibility-framework-mef]] to:
Are you interested to know more about MEF (e.g. "MEF vs standard IoC Container", "MEF Visualizer") click [[MEFmore | here]] . Deleted lines 38-53:
h2. Interestiong links *[[Spring.NET & Attribute Driven Configuration -> http://the-tread-way.blogspot.cz/2010/04/springnet-attribute-driven.html]] *[[MEF Runtime Plugin Swapping -> http://paxcel.net/blog/mef-runtime-plugin-swapping/]] h2. TODO http://channel9.msdn.com/posts/NET-45-Oleg-Lvovitch-and-Kevin-Ransom-Managed-Extensibility-Framework-MEF-20 http://www.codeproject.com/Articles/376033/From-Zero-to-Proficient-with-MEF http://www.codeproject.com/Articles/37579/Managed-Extensibility-Framework-Part https://emcpadden.wordpress.com/2008/12/07/managed-extensibility-framework-and-others/ h2. OSGI Spring Links http://www.javaworld.com/article/2077837/java-se/hello--osgi--part-1--bundles-for-beginners.html http://www.javaworld.com/article/2077853/java-se/hello--osgi--part-2--introduction-to-spring-dynamic-modules.html#resources 28 January 2015, 14:06
by
- Changed lines 33-35 from:
Are you interested to know more about "MEF vs standard IoC Container", "MEF Visualizer" click [[MEFmore | here]] . to:
Are you interested to know more about MEF (i.e. "MEF vs standard IoC Container", "MEF Visualizer") click [[MEFmore | here]] . 28 January 2015, 14:02
by
- Changed lines 33-34 from:
[[MEFmore | More]] to:
Are you interested to know more about "MEF vs standard IoC Container", "MEF Visualizer" click [[MEFmore | here]] . 28 January 2015, 14:01
by
- Changed lines 14-16 from:
Attach:mef.png Longer description [[here -> http://mef.codeplex.com/wikipage?title=Overview&referringTitle=Home]] (codeplex wiki). to:
-> Attach:mef.png ------> Longer description [[here -> http://mef.codeplex.com/wikipage?title=Overview&referringTitle=Home]] (codeplex wiki). Changed lines 25-27 from:
h2. 4. MEF [[MEFarchitecture | Architecture]] to:
h2. 4. MEF Architecture Full MEF Architecture described [[MEFarchitecture | here]]. 28 January 2015, 13:56
by
- Changed lines 2-3 from:
The Managed Extensibility Framework ([[MEF -> https://www.google.cz/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CCMQFjAA&url=http%3A%2F%2Fmsdn.microsoft.com%2Fcs-cz%2Flibrary%2Fdd460648%2528v%3Dvs.110%2529.aspx&ei=QgGgVN6XFMz7aPadgYgO&usg=AFQjCNF8DQdQojB0Aslm3_ImIUcjaS-n8w&sig2=rxSYq3UH2K8kdjt26fMAxw&bvm=bv.82001339,d.d2s ]]) is a composition layer for .NET that improves the flexibility, maintainability and testability of large applications. MEF can be used for third-party plugin extensibility, or it can bring the benefits of a loosely-coupled plugin-like architecture to regular applications. to:
The *Managed Extensibility Framework* ([[MEF -> https://www.google.cz/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CCMQFjAA&url=http%3A%2F%2Fmsdn.microsoft.com%2Fcs-cz%2Flibrary%2Fdd460648%2528v%3Dvs.110%2529.aspx&ei=QgGgVN6XFMz7aPadgYgO&usg=AFQjCNF8DQdQojB0Aslm3_ImIUcjaS-n8w&sig2=rxSYq3UH2K8kdjt26fMAxw&bvm=bv.82001339,d.d2s ]]) is a composition layer for .NET that improves the flexibility, maintainability and testability of large applications. MEF can be used for third-party plugin extensibility, or it can bring the benefits of a loosely-coupled plugin-like architecture to regular applications. Changed lines 11-13 from:
* *Parts* are the cornerstone of MEF. Parts known as Exports can provide services to other parts whilst parts known as Imports consume services from other parts. It is throught this relationship between what a part needs, and what a part can provide that the composition takes place. Service definition is done via Contracts. * *Containers* perform the actual composition between parts by matching Exports with Imports, that is, service providers with service consumers. * *Catalogs* are in charge of part discovery. Using different built-in catalogs, an application can find parts within a given assembly or a given folder at runtime. Containers use catalogs to find out which parts they can use during composition. to:
* *Parts* are the cornerstone of MEF. Parts known as *Exports* can provide services to other parts whilst parts known as *Imports* consume services from other parts. It is throught this relationship between what a part needs, and what a part can provide that the composition takes place. Service definition is done via ''Contracts''. * *Containers* perform the actual composition between parts by matching *Exports* with *Imports*, that is, service providers with service consumers. * *Catalogs* are in charge of part discovery. Using different built-in catalogs, an application can find parts within a given assembly or a given folder at runtime. *Containers* use *catalogs* to find out which parts they can use during composition. 28 January 2015, 13:54
by
- Changed line 1 from:
h2. Introduction to:
h2. 1. Introduction Changed lines 6-13 from:
*System.ComponentModel.Composition.[@*@] which has shipped with .NET 4.0 and higher and Silverlight 4. This provides the standard extension model that has been used in Visual Studio. *System.Compostion.[@*@] is a lightweight version of MEF, which has been optimized for static composition scenarios and provides faster compositions. It is also the only version of MEF that is as a portable class library and can be used on phone, store, desktop and web applications. h2. How MEF works *Parts are the cornerstone of MEF. Parts known as Exports can provide services to other parts whilst parts known as Imports consume services from other parts. It is throught this relationship between what a part needs, and what a part can provide that the composition takes place. Service definition is done via Contracts. *Containers perform the actual composition between parts by matching Exports with Imports, that is, service providers with service consumers. *Catalogs are in charge of part discovery. Using different built-in catalogs, an application can find parts within a given assembly or a given folder at runtime. Containers use catalogs to find out which parts they can use during composition. to:
* [@System.ComponentModel.Composition.* @] which has shipped with .NET 4.0 and higher and Silverlight 4. This provides the standard extension model that has been used in Visual Studio. * [@System.Compostion.* @] is a lightweight version of MEF, which has been optimized for static composition scenarios and provides faster compositions. It is also the only version of MEF that is as a portable class library and can be used on phone, store, desktop and web applications. h2. 2. How MEF works * *Parts* are the cornerstone of MEF. Parts known as Exports can provide services to other parts whilst parts known as Imports consume services from other parts. It is throught this relationship between what a part needs, and what a part can provide that the composition takes place. Service definition is done via Contracts. * *Containers* perform the actual composition between parts by matching Exports with Imports, that is, service providers with service consumers. * *Catalogs* are in charge of part discovery. Using different built-in catalogs, an application can find parts within a given assembly or a given folder at runtime. Containers use catalogs to find out which parts they can use during composition. Changed lines 17-18 from:
h2. MEF Examples to:
h2. 3. MEF Examples Changed lines 23-51 from:
h2. MEF vs standard IoC Container Nicely writen article about "Mef vs IoC" [[here -> http://msdn.microsoft.com/en-us/magazine/gg650670.aspx]]. DI is based on three dimensions, Object Composition, Lifetime Management, and Interception. MEF has potential, but as a DI container, it lacks: *Code as Configuration *Auto Registration *XML configuration *Custom Lifetimes *[[Interception -> http://msdn.microsoft.com/en-us/magazine/gg535676.aspx]] (another example [[Interception using Dependency Injection Container -> http://www.freeportmetrics.com/blog/interception-using-dependency-injection-container-unity-to-achieve-separation-of-concerns/]]) For Lifestyle it lacks: *Per graph *Web Request Context *Thread Context *Session Context *Pooled *Scoped *Custom Reference Its a option to use MEF as a Extension for standard IoC container [[more -> http://blogs.msdn.com/b/nblumhardt/archive/2009/03/16/hosting-mef-extensions-in-an-ioc-container.aspx]]. h3. .NET IoC/DI options: *[[Containers comparsion-> http://featuretests.apphb.com/DependencyInjection.html]] (another [[Unity, StructurMap, Autofac, Castle Windsor, Ninject facilitates and Spring.NET comparsion -> http://elegantcode.com/2009/01/07/ioc-libraries-compared/]]) *[[OSGi.net -> http://osgi.codeplex.com]] h2. MEF [[MEFarchitecture | Architecture]] to:
h2. 4. MEF [[MEFarchitecture | Architecture]] Changed lines 28-47 from:
h2. MEF Visualizer Helps to see what is going on inside the MEF Composition Container. [[Download -> http://mefvisualizer.codeplex.com]] %width=700px%Attach:MEF_Visualization.png ->[@ Container = new CompositionContainer( new AggregateCatalog( new AssemblyCatalog( Assembly.GetExecutingAssembly() ) , new AssemblyCatalog( Assembly.LoadFrom( @"MEFVisualizer.Exe" ) ) ) ); Container.Compose( batch ); var meftoDgml = new MEFToDGML( Container){ IsNamespaceGrouping = true }; // The Visualizer meftoDgml.WriteToDGMLFile(); // Write to DGML file @] h2. Why to use MEF to:
h2. 5. More about MEF [[MEFmore | More]] h2. 6. Why to use MEF Changed lines 35-36 from:
h2. Good explanations to:
h2. 7. Good explanations 28 January 2015, 11:44
by
- Added lines 74-77:
h2. Why to use MEF [[10 reasons why to use MEF -> http://csharperimage.jeremylikness.com/2010/04/ten-reasons-to-use-managed.html]] 28 January 2015, 11:42
by
- Changed lines 21-22 from:
h3. 3. Hello World [[example-> http://www.codeproject.com/Articles/56635/Managed-Extensibility-Framework]] - [@ External *Codeproject* site! @] to:
h3. 3. [[Hello World example-> http://www.codeproject.com/Articles/56635/Managed-Extensibility-Framework]] - [@ External *Codeproject* site! @] 28 January 2015, 11:42
by
- Changed lines 15-18 from:
Longer version [[here -> http://mef.codeplex.com/wikipage?title=Overview&referringTitle=Home]] (codeplex wiki). h2. MEF [[MEFExample | Example]] to:
Longer description [[here -> http://mef.codeplex.com/wikipage?title=Overview&referringTitle=Home]] (codeplex wiki). h2. MEF Examples h3. 1. [[MEFWizardExample | Evil Wizard example ]] - basic usage of MEF. h3. 2. [[MEFExample | Catalogs example ]] - more *Catalog* focused h3. 3. Hello World [[example-> http://www.codeproject.com/Articles/56635/Managed-Extensibility-Framework]] - [@ External *Codeproject* site! @] 04 January 2015, 22:06
by
- Changed lines 17-25 from:
h2. MEF Example Longer version of this example [[more -> http://www.codeproject.com/Articles/188054/An-Introduction-to-Managed-Extensibility-Framework]]. Another "Hello World!" [[example-> http://www.codeproject.com/Articles/56635/Managed-Extensibility-Framework]] [[10 reasons why to use MEF -> http://csharperimage.jeremylikness.com/2010/04/ten-reasons-to-use-managed.html]] to:
h2. MEF [[MEFExample | Example]] 04 January 2015, 22:00
by
- Deleted line 25:
Changed lines 54-57 from:
h2. MEF Architecture [[In-Depth analysis of MEF Architecture -> https://kishore1021.wordpress.com/window-8-winrt/in-depth-analysis-of-mef-architecture/]] to:
h2. MEF [[MEFarchitecture | Architecture]] Attach:arch1_thumb.png *Fig*: _Different layers in the Managed Extensions Framework._ 04 January 2015, 21:36
by
- Changed lines 52-53 from:
*[[Containers comparsion-> http://featuretests.apphb.com/DependencyInjection.html]] (another [[Unity, StructurMap, Autofac, Castle Windsor, Ninject facilitates and Spring.NET comparsion -> http://elegantcode.com/2009/01/07/ioc-libraries-compared/]]) to:
*[[Containers comparsion-> http://featuretests.apphb.com/DependencyInjection.html]] (another [[Unity, StructurMap, Autofac, Castle Windsor, Ninject facilitates and Spring.NET comparsion -> http://elegantcode.com/2009/01/07/ioc-libraries-compared/]]) 04 January 2015, 21:36
by
- Changed line 53 from:
(another comparsion [[Unity, StructurMap, Autofac, Castle Windsor, Ninject facilitates and Spring.NET comparsion -> http://elegantcode.com/2009/01/07/ioc-libraries-compared/]]) to:
(another [[Unity, StructurMap, Autofac, Castle Windsor, Ninject facilitates and Spring.NET comparsion -> http://elegantcode.com/2009/01/07/ioc-libraries-compared/]]) 04 January 2015, 21:35
by
- Changed line 53 from:
*[[Unity, StructurMap, Autofac, Castle Windsor, Ninject facilitates and Spring.NET comparsion -> http://elegantcode.com/2009/01/07/ioc-libraries-compared/]] to:
(another comparsion [[Unity, StructurMap, Autofac, Castle Windsor, Ninject facilitates and Spring.NET comparsion -> http://elegantcode.com/2009/01/07/ioc-libraries-compared/]]) 04 January 2015, 21:27
by
- Added lines 58-59:
[[In-Depth analysis of MEF Architecture -> https://kishore1021.wordpress.com/window-8-winrt/in-depth-analysis-of-mef-architecture/]] Deleted lines 109-110:
[[In-Depth analysis of MEF Architecture -> https://kishore1021.wordpress.com/window-8-winrt/in-depth-analysis-of-mef-architecture/]] 04 January 2015, 21:22
by
- Added lines 77-78:
h3. Audio Added lines 80-81:
h3. Code Deleted line 82:
*[[Video: MEF Oleg Lvovitch and Kevin Ransom -> http://channel9.msdn.com/posts/NET-45-Oleg-Lvovitch-and-Kevin-Ransom-Managed-Extensibility-Framework-MEF-20]] Introduction, MEF 2.0 Deleted lines 83-84:
*[[Presentation: Lecture by Nuno Cancelo -> http://www.slideshare.net/NunoCancelo/give-more-life-to-your-application-extending-it-with-mef]] *[[Presentation: Lecture by Mohamed Meligy -> http://www.slideshare.net/Mohamed_Meligy/managed-extensibility-framework-mef]] Added lines 85-87:
h3. Video *[[Video: MEF Oleg Lvovitch and Kevin Ransom -> http://channel9.msdn.com/posts/NET-45-Oleg-Lvovitch-and-Kevin-Ransom-Managed-Extensibility-Framework-MEF-20]] Introduction, MEF 2.0 Added lines 90-95:
h3. Presentation *[[Presentation: Lecture by Nuno Cancelo -> http://www.slideshare.net/NunoCancelo/give-more-life-to-your-application-extending-it-with-mef]] *[[Presentation: Lecture by Mohamed Meligy -> http://www.slideshare.net/Mohamed_Meligy/managed-extensibility-framework-mef]] Changed lines 103-105 from:
[[Spring.NET & Attribute Driven Configuration -> http://the-tread-way.blogspot.cz/2010/04/springnet-attribute-driven.html]] [[MEF Runtime Plugin Swapping -> http://paxcel.net/blog/mef-runtime-plugin-swapping/]] to:
*[[Spring.NET & Attribute Driven Configuration -> http://the-tread-way.blogspot.cz/2010/04/springnet-attribute-driven.html]] *[[MEF Runtime Plugin Swapping -> http://paxcel.net/blog/mef-runtime-plugin-swapping/]] 04 January 2015, 21:17
by
- Changed lines 87-88 from:
[[Dependency Injection in .NET -> http://www.amazon.com/Dependency-Injection-NET-Mark-Seemann/dp/1935182501]] to:
*[[Dependency Injection in .NET -> http://www.amazon.com/Dependency-Injection-NET-Mark-Seemann/dp/1935182501]] *[[Programming .NET Components, 2nd Edition -> http://www.amazon.com/Programming-NET-Components-Juval-Lowy/dp/0596102070/]] *[[Pro .NET 1.1 Remoting, Reflection, and Threading -> http://www.amazon.com/Pro-NET-Remoting-Reflection-Threading/dp/1590594525/]] 04 January 2015, 20:14
by
- Changed lines 4-5 from:
*There are two versions of MEF:* to:
h3.There are two versions of MEF: Changed lines 56-57 from:
to:
h2. MEF Architecture 28 December 2014, 16:21
by
- Changed lines 95-104 from:
[[In-Depth analysis of MEF Architecture -> https://kishore1021.wordpress.com/window-8-winrt/in-depth-analysis-of-mef-architecture/]] to:
[[In-Depth analysis of MEF Architecture -> https://kishore1021.wordpress.com/window-8-winrt/in-depth-analysis-of-mef-architecture/]] http://channel9.msdn.com/posts/NET-45-Oleg-Lvovitch-and-Kevin-Ransom-Managed-Extensibility-Framework-MEF-20 http://www.codeproject.com/Articles/376033/From-Zero-to-Proficient-with-MEF http://www.codeproject.com/Articles/37579/Managed-Extensibility-Framework-Part https://emcpadden.wordpress.com/2008/12/07/managed-extensibility-framework-and-others/ h2. OSGI Spring Links http://www.javaworld.com/article/2077837/java-se/hello--osgi--part-1--bundles-for-beginners.html http://www.javaworld.com/article/2077853/java-se/hello--osgi--part-2--introduction-to-spring-dynamic-modules.html#resources 28 December 2014, 15:39
by
- Changed lines 95-99 from:
[[In-Depth analysis of MEF Architecture -> https://kishore1021.wordpress.com/window-8-winrt/in-depth-analysis-of-mef-architecture/]] TODO * to:
[[In-Depth analysis of MEF Architecture -> https://kishore1021.wordpress.com/window-8-winrt/in-depth-analysis-of-mef-architecture/]] 28 December 2014, 15:38
by
- Changed lines 21-22 from:
Another "Hello World!" [[more -> http://www.codeproject.com/Articles/56635/Managed-Extensibility-Framework]] to:
Another "Hello World!" [[example-> http://www.codeproject.com/Articles/56635/Managed-Extensibility-Framework]] 28 December 2014, 15:38
by
- Added lines 21-22:
Another "Hello World!" [[more -> http://www.codeproject.com/Articles/56635/Managed-Extensibility-Framework]] Changed lines 99-100 from:
* http://www.codeproject.com/Articles/56635/Managed-Extensibility-Framework * http://channel9.msdn.com/Blogs/JanSteberl/Managed-Extensibility-Framework to:
* 28 December 2014, 15:36
by
- Deleted line 80:
Changed lines 82-83 from:
to:
*[[Video: MEF Jan Steberl CZ -> http://channel9.msdn.com/Blogs/JanSteberl/Managed-Extensibility-Framework]] Introduction MEF - CZ Deleted lines 94-99:
28 December 2014, 15:34
by
- Changed line 10 from:
Attach:mef.png to:
Changed lines 14-16 from:
to:
Attach:mef.png Longer version [[here -> http://mef.codeplex.com/wikipage?title=Overview&referringTitle=Home]] (codeplex wiki). Added lines 80-81:
*[[Presentation: Lecture by Mohamed Meligy -> http://www.slideshare.net/Mohamed_Meligy/managed-extensibility-framework-mef]] Deleted line 103:
* http://mef.codeplex.com/wikipage?title=Overview&referringTitle=Home Deleted lines 104-107:
* * http://the-tread-way.blogspot.cz/2010/04/springnet-attribute-driven.html * http://www.slideshare.net/Mohamed_Meligy/managed-extensibility-framework-mef 28 December 2014, 15:26
by
- Changed line 24 from:
Nicely writen article about "Mef vs Ioc" to:
Nicely writen article about "Mef vs IoC" 28 December 2014, 15:25
by
- Added line 26:
28 December 2014, 15:24
by
- Added lines 24-25:
Nicely writen article about "Mef vs Ioc" [[here -> http://msdn.microsoft.com/en-us/magazine/gg650670.aspx]]. Changed line 102 from:
* http://msdn.microsoft.com/en-us/magazine/gg650670.aspx to:
* 28 December 2014, 15:22
by
- Deleted lines 99-100:
* http://stackoverflow.com/questions/216565/why-exactly-isnt-mef-a-di-ioc-container 28 December 2014, 15:21
by
- Changed line 100 from:
* http://www.hanselman.com/blog/HanselminutesPodcast148MEFManagedExtensibilityFrameworkWithGlennBlock.aspx to:
28 December 2014, 15:18
by
- Changed lines 17-18 from:
Longer version of this example [[more -> * http://www.codeproject.com/Articles/188054/An-Introduction-to-Managed-Extensibility-Framework]]. to:
Longer version of this example [[more -> http://www.codeproject.com/Articles/188054/An-Introduction-to-Managed-Extensibility-Framework]]. 28 December 2014, 15:18
by
- Added lines 17-18:
Longer version of this example [[more -> * http://www.codeproject.com/Articles/188054/An-Introduction-to-Managed-Extensibility-Framework]]. Changed lines 75-76 from:
[[Code: Complete MEF Programming Guide -> https://mef.codeplex.com/wikipage?title=Guide&referringTitle=Overview]] to:
*[[Code: Complete MEF Programming Guide -> https://mef.codeplex.com/wikipage?title=Guide&referringTitle=Overview]] Changed line 95 from:
* http://www.codeproject.com/Articles/188054/An-Introduction-to-Managed-Extensibility-Framework to:
28 December 2014, 15:16
by
- Changed lines 73-74 from:
to:
[[Code: Complete MEF Programming Guide -> https://mef.codeplex.com/wikipage?title=Guide&referringTitle=Overview]] Changed lines 88-91 from:
[[MEF Programming Guide -> https://mef.codeplex.com/wikipage?title=Guide&referringTitle=Overview]] to:
28 December 2014, 15:14
by
- Deleted lines 80-82:
[[Hosting MEF Extensions in an IoC Container -> http://blogs.msdn.com/b/nblumhardt/archive/2009/03/16/hosting-mef-extensions-in-an-ioc-container.aspx]] 28 December 2014, 15:11
by
- Added lines 40-41:
Its a option to use MEF as a Extension for standard IoC container [[more -> http://blogs.msdn.com/b/nblumhardt/archive/2009/03/16/hosting-mef-extensions-in-an-ioc-container.aspx]]. Added lines 77-83:
h2. Interestiong links [[Spring.NET & Attribute Driven Configuration -> http://the-tread-way.blogspot.cz/2010/04/springnet-attribute-driven.html]] [[MEF Runtime Plugin Swapping -> http://paxcel.net/blog/mef-runtime-plugin-swapping/]] [[Hosting MEF Extensions in an IoC Container -> http://blogs.msdn.com/b/nblumhardt/archive/2009/03/16/hosting-mef-extensions-in-an-ioc-container.aspx]] Deleted lines 89-92:
[[MEF Runtime Plugin Swapping -> http://paxcel.net/blog/mef-runtime-plugin-swapping/]] [[Hosting MEF Extensions in an IoC Container -> http://blogs.msdn.com/b/nblumhardt/archive/2009/03/16/hosting-mef-extensions-in-an-ioc-container.aspx]] Changed lines 92-93 from:
[[Spring.NET -> http://the-tread-way.blogspot.cz/2010/04/springnet-attribute-driven.html]] to:
28 December 2014, 15:03
by
- Changed lines 70-71 from:
to:
*[[Presentation: Lecture by Nuno Cancelo -> http://www.slideshare.net/NunoCancelo/give-more-life-to-your-application-extending-it-with-mef]] Deleted lines 76-77:
Changed lines 79-80 from:
[[Lecture -> http://www.slideshare.net/NunoCancelo/give-more-life-to-your-application-extending-it-with-mef]] to:
28 December 2014, 15:01
by
- Changed lines 28-30 from:
*[[Interception -> http://msdn.microsoft.com/en-us/magazine/gg535676.aspx]] another example [[Interception using Dependency Injection Container -> http://www.freeportmetrics.com/blog/interception-using-dependency-injection-container-unity-to-achieve-separation-of-concerns/]] to:
*[[Interception -> http://msdn.microsoft.com/en-us/magazine/gg535676.aspx]] (another example [[Interception using Dependency Injection Container -> http://www.freeportmetrics.com/blog/interception-using-dependency-injection-container-unity-to-achieve-separation-of-concerns/]]) 28 December 2014, 15:01
by
- Changed lines 28-30 from:
*[[Interception -> http://msdn.microsoft.com/en-us/magazine/gg535676.aspx]] to:
*[[Interception -> http://msdn.microsoft.com/en-us/magazine/gg535676.aspx]] another example [[Interception using Dependency Injection Container -> http://www.freeportmetrics.com/blog/interception-using-dependency-injection-container-unity-to-achieve-separation-of-concerns/]] Changed lines 76-77 from:
[[Interception using Dependency Injection Container -> http://www.freeportmetrics.com/blog/interception-using-dependency-injection-container-unity-to-achieve-separation-of-concerns/]] to:
28 December 2014, 14:59
by
- Changed lines 28-29 from:
*Interception to:
*[[Interception -> http://msdn.microsoft.com/en-us/magazine/gg535676.aspx]] 28 December 2014, 14:57
by
- Changed lines 68-69 from:
to:
*[[Code: Glenn Block - Building Composable Apps in .NET 4 with the Managed Extensibility Framework -> http://msdn.microsoft.com/en-us/magazine/ee291628.aspx]] Complete explanations of MEF capabilities 28 December 2014, 14:16
by
- Changed lines 2-3 from:
The Managed Extensibility Framework ([[MEF -> http://msdn.microsoft.com/cs-cz/library/dd460648(v=vs.110).aspx ]]) is a composition layer for .NET that improves the flexibility, maintainability and testability of large applications. MEF can be used for third-party plugin extensibility, or it can bring the benefits of a loosely-coupled plugin-like architecture to regular applications. to:
The Managed Extensibility Framework ([[MEF -> https://www.google.cz/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CCMQFjAA&url=http%3A%2F%2Fmsdn.microsoft.com%2Fcs-cz%2Flibrary%2Fdd460648%2528v%3Dvs.110%2529.aspx&ei=QgGgVN6XFMz7aPadgYgO&usg=AFQjCNF8DQdQojB0Aslm3_ImIUcjaS-n8w&sig2=rxSYq3UH2K8kdjt26fMAxw&bvm=bv.82001339,d.d2s ]]) is a composition layer for .NET that improves the flexibility, maintainability and testability of large applications. MEF can be used for third-party plugin extensibility, or it can bring the benefits of a loosely-coupled plugin-like architecture to regular applications. 28 December 2014, 14:09
by
- Changed lines 2-3 from:
The Managed Extensibility Framework (MEF) is a composition layer for .NET that improves the flexibility, maintainability and testability of large applications. MEF can be used for third-party plugin extensibility, or it can bring the benefits of a loosely-coupled plugin-like architecture to regular applications. to:
The Managed Extensibility Framework ([[MEF -> http://msdn.microsoft.com/cs-cz/library/dd460648(v=vs.110).aspx ]]) is a composition layer for .NET that improves the flexibility, maintainability and testability of large applications. MEF can be used for third-party plugin extensibility, or it can bring the benefits of a loosely-coupled plugin-like architecture to regular applications. 28 December 2014, 14:07
by
- Changed line 41 from:
*[[Unity, StructurMap, Autofac, Castle Windsor, Ninject facilitates, Spring.NET, -> http://elegantcode.com/2009/01/07/ioc-libraries-compared/]] to:
*[[Unity, StructurMap, Autofac, Castle Windsor, Ninject facilitates and Spring.NET comparsion -> http://elegantcode.com/2009/01/07/ioc-libraries-compared/]] 28 December 2014, 14:06
by
- Changed lines 40-46 from:
[[Containers comparsion-> http://featuretests.apphb.com/DependencyInjection.html]] [[Unity, StructurMap, Autofac, Castle Windsor, Ninject facilitates, Spring.NET, -> http://elegantcode.com/2009/01/07/ioc-libraries-compared/]] [[OSGi.net -> http://osgi.codeplex.com]] to:
*[[Containers comparsion-> http://featuretests.apphb.com/DependencyInjection.html]] *[[Unity, StructurMap, Autofac, Castle Windsor, Ninject facilitates, Spring.NET, -> http://elegantcode.com/2009/01/07/ioc-libraries-compared/]] *[[OSGi.net -> http://osgi.codeplex.com]] 28 December 2014, 14:06
by
- Changed lines 39-43 from:
h3. .NET IoC/DI options: [[Containers comparsion-> http://featuretests.apphb.com/DependencyInjection.html]] Unity, Castle Windsor, Ninject facilitates, Spring.NET, [[OSGi.net -> http://osgi.codeplex.com]] to:
h3. .NET IoC/DI options: [[Containers comparsion-> http://featuretests.apphb.com/DependencyInjection.html]] [[Unity, StructurMap, Autofac, Castle Windsor, Ninject facilitates, Spring.NET, -> http://elegantcode.com/2009/01/07/ioc-libraries-compared/]] [[OSGi.net -> http://osgi.codeplex.com]] 28 December 2014, 14:03
by
- Changed line 39 from:
h3. .NET IoC/DI options: to:
h3. .NET IoC/DI options: [[Containers comparsion-> http://featuretests.apphb.com/DependencyInjection.html]] Changed lines 41-43 from:
[[Containers comparsion-> http://featuretests.apphb.com/DependencyInjection.html]] to:
28 December 2014, 14:00
by
- Changed lines 24-29 from:
*1. Code as Configuration *2. Auto Registration *3. XML configuration *4. Custom Lifetimes *5. Interception to:
*Code as Configuration *Auto Registration *XML configuration *Custom Lifetimes *Interception Changed lines 31-38 from:
*1. Per graph *2. Web Request Context *3. Thread Context *4. Session Context *5. Pooled *6. Scoped *7. Custom Reference to:
*Per graph *Web Request Context *Thread Context *Session Context *Pooled *Scoped *Custom Reference 28 December 2014, 13:59
by
- Changed lines 24-31 from:
1. Code as Configuration 2. Auto Registration 3. XML configuration (not so important to me) 4. Custom Lifetimes 5. Interception Those things are pretty important. to:
*1. Code as Configuration *2. Auto Registration *3. XML configuration *4. Custom Lifetimes *5. Interception Changed lines 31-39 from:
1. Per graph 2. Web Request Context 3. Thread Context 4. Session Context 5. Pooled 6. Scoped 7. Custom Reference to:
*1. Per graph *2. Web Request Context *3. Thread Context *4. Session Context *5. Pooled *6. Scoped *7. Custom Reference 28 December 2014, 13:52
by
- Changed line 21 from:
h2. MEF vs IoC Container to:
h2. MEF vs standard IoC Container Changed lines 42-47 from:
.NET IoC/DI options: Unity Castle Windsor Ninject facilitates Spring.NET to:
h3. .NET IoC/DI options: Unity, Castle Windsor, Ninject facilitates, Spring.NET, [[OSGi.net -> http://osgi.codeplex.com]] [[Containers comparsion-> http://featuretests.apphb.com/DependencyInjection.html]] 28 December 2014, 00:48
by
- Added lines 4-5:
*There are two versions of MEF:* 28 December 2014, 00:17
by
- Changed lines 15-18 from:
[[10 reason why to use MEF -> http://csharperimage.jeremylikness.com/2010/04/ten-reasons-to-use-managed.html]] to:
[[10 reasons why to use MEF -> http://csharperimage.jeremylikness.com/2010/04/ten-reasons-to-use-managed.html]] 28 December 2014, 00:16
by
- Changed lines 15-18 from:
to:
[[10 reason why to use MEF -> http://csharperimage.jeremylikness.com/2010/04/ten-reasons-to-use-managed.html]] 28 December 2014, 00:13
by
- Changed line 37 from:
Another .NET IoC/DI options: to:
.NET IoC/DI options: 22 December 2014, 15:56
by
- Changed line 62 from:
*[[Audio: MEF with Glenn Block -> http://www.hanselminutes.com/148/mef-managed-extensibility-framework-with-glenn-block]] IoC, DI vs MEF to:
*[[Audio: MEF with Glenn Block -> http://www.hanselminutes.com/148/mef-managed-extensibility-framework-with-glenn-block]] [@IoC@], DI vs MEF 22 December 2014, 15:55
by
- Changed line 62 from:
*[[Audio: MEF with Glenn Block -> http://www.hanselminutes.com/148/mef-managed-extensibility-framework-with-glenn-block]] to:
*[[Audio: MEF with Glenn Block -> http://www.hanselminutes.com/148/mef-managed-extensibility-framework-with-glenn-block]] IoC, DI vs MEF Changed lines 64-66 from:
*[[Video: MEF Oleg Lvovitch and Kevin Ransom -> http://channel9.msdn.com/posts/NET-45-Oleg-Lvovitch-and-Kevin-Ransom-Managed-Extensibility-Framework-MEF-20]] to:
*[[Video: MEF Oleg Lvovitch and Kevin Ransom -> http://channel9.msdn.com/posts/NET-45-Oleg-Lvovitch-and-Kevin-Ransom-Managed-Extensibility-Framework-MEF-20]] Introduction, MEF 2.0 22 December 2014, 15:49
by
- Changed lines 62-66 from:
[[Audio: MEF with Glenn Block -> http://www.hanselminutes.com/148/mef-managed-extensibility-framework-with-glenn-block]] [[Code: Barbarian Meets MEF -> http://www.barbarianmeetscoding.com/blog/2012/08/14/barbarian-meets-mef-managed-extensiblity-framework/]] [[Video: MEF Oleg Lvovitch and Kevin Ransom -> http://channel9.msdn.com/posts/NET-45-Oleg-Lvovitch-and-Kevin-Ransom-Managed-Extensibility-Framework-MEF-20]] to:
*[[Audio: MEF with Glenn Block -> http://www.hanselminutes.com/148/mef-managed-extensibility-framework-with-glenn-block]] *[[Code: Barbarian Meets MEF -> http://www.barbarianmeetscoding.com/blog/2012/08/14/barbarian-meets-mef-managed-extensiblity-framework/]] *[[Video: MEF Oleg Lvovitch and Kevin Ransom -> http://channel9.msdn.com/posts/NET-45-Oleg-Lvovitch-and-Kevin-Ransom-Managed-Extensibility-Framework-MEF-20]] 22 December 2014, 15:48
by
- Changed lines 64-65 from:
to:
[[Video: MEF Oleg Lvovitch and Kevin Ransom -> http://channel9.msdn.com/posts/NET-45-Oleg-Lvovitch-and-Kevin-Ransom-Managed-Extensibility-Framework-MEF-20]] 22 December 2014, 15:46
by
- Changed lines 63-64 from:
to:
[[Code: Barbarian Meets MEF -> http://www.barbarianmeetscoding.com/blog/2012/08/14/barbarian-meets-mef-managed-extensiblity-framework/]] Deleted lines 72-73:
[[Barbarian Meets MEF -> http://www.barbarianmeetscoding.com/blog/2012/08/14/barbarian-meets-mef-managed-extensiblity-framework/]] 22 December 2014, 15:45
by
- Changed lines 13-14 from:
to:
h2. MEF Example Changed line 37 from:
Another .NET options: to:
Another .NET IoC/DI options: Changed lines 61-62 from:
to:
h2. Good explanations [[Audio: MEF with Glenn Block -> http://www.hanselminutes.com/148/mef-managed-extensibility-framework-with-glenn-block]] 22 December 2014, 15:38
by
- Changed lines 7-8 from:
h2. How it works to:
h2. How MEF works Attach:mef.png 22 December 2014, 15:37
by
- Changed lines 7-14 from:
to:
h2. How it works *Parts are the cornerstone of MEF. Parts known as Exports can provide services to other parts whilst parts known as Imports consume services from other parts. It is throught this relationship between what a part needs, and what a part can provide that the composition takes place. Service definition is done via Contracts. *Containers perform the actual composition between parts by matching Exports with Imports, that is, service providers with service consumers. *Catalogs are in charge of part discovery. Using different built-in catalogs, an application can find parts within a given assembly or a given folder at runtime. Containers use catalogs to find out which parts they can use during composition. 22 December 2014, 15:15
by
- Changed line 36 from:
Helps to see what is going on inside the MEF Composition Container to:
Helps to see what is going on inside the MEF Composition Container. [[Download -> http://mefvisualizer.codeplex.com]] Changed lines 52-54 from:
[[Download -> http://mefvisualizer.codeplex.com]] to:
22 December 2014, 15:15
by
- Changed lines 52-53 from:
to:
[[Download -> http://mefvisualizer.codeplex.com]] 22 December 2014, 15:03
by
- Changed lines 37-38 from:
Attach:MEF_Visualization.png to:
%width=700px%Attach:MEF_Visualization.png 22 December 2014, 14:34
by
- Changed lines 39-64 from:
(:source lang=css header="$HTMLStylesFmt['sourceblock'] = '" footer="';":) [= .sourceblocklink { text-align: right; font-size: smaller; } .sourceblocktext { padding: 0.5em; border: 1px solid #808080; color: #000000; background-color: #F1F0ED; } .sourceblocktext div { font-family: monospace; font-size: small; line-height: 1; height: 1%; } .sourceblocktext div.head, .sourceblocktext div.foot { font: italic medium serif; padding: 0.5em; }=] to:
->[@ Container = new CompositionContainer( new AggregateCatalog( new AssemblyCatalog( Assembly.GetExecutingAssembly() ) , new AssemblyCatalog( Assembly.LoadFrom( @"MEFVisualizer.Exe" ) ) ) ); Container.Compose( batch ); var meftoDgml = new MEFToDGML( Container){ IsNamespaceGrouping = true }; // The Visualizer meftoDgml.WriteToDGMLFile(); // Write to DGML file @] 22 December 2014, 14:26
by
- Changed lines 39-43 from:
=csharp[= ApplicationContext ctx = new ClassPathXmlApplicationContext("cz/zcu/kiv/project/beanDefinition.xml"); =] to:
(:source lang=css header="$HTMLStylesFmt['sourceblock'] = '" footer="';":) [= .sourceblocklink { text-align: right; font-size: smaller; } .sourceblocktext { padding: 0.5em; border: 1px solid #808080; color: #000000; background-color: #F1F0ED; } .sourceblocktext div { font-family: monospace; font-size: small; line-height: 1; height: 1%; } .sourceblocktext div.head, .sourceblocktext div.foot { font: italic medium serif; padding: 0.5em; }=] 22 December 2014, 14:20
by
- Changed lines 39-53 from:
---> =java122[= Container = new CompositionContainer( new AggregateCatalog( new AssemblyCatalog( Assembly.GetExecutingAssembly() ) , new AssemblyCatalog( Assembly.LoadFrom( @"MEFVisualizer.Exe" ) ) ) ); Container.Compose( batch ); var meftoDgml = new MEFToDGML( Container){ IsNamespaceGrouping = true }; // The Visualizer meftoDgml.WriteToDGMLFile(); // Write to DGML file =] to:
=csharp[= ApplicationContext ctx = new ClassPathXmlApplicationContext("cz/zcu/kiv/project/beanDefinition.xml"); =] 22 December 2014, 14:18
by
- Changed line 39 from:
--->[= to:
---> =java122[= 22 December 2014, 14:17
by
- Changed lines 39-40 from:
(:code:) [= // C# source code goes here to:
--->[= Container = new CompositionContainer( new AggregateCatalog( new AssemblyCatalog( Assembly.GetExecutingAssembly() ) , new AssemblyCatalog( Assembly.LoadFrom( @"MEFVisualizer.Exe" ) ) ) ); Container.Compose( batch ); var meftoDgml = new MEFToDGML( Container){ IsNamespaceGrouping = true }; // The Visualizer meftoDgml.WriteToDGMLFile(); // Write to DGML file 22 December 2014, 14:11
by
- Changed line 39 from:
(:code=csharp:) [= to:
(:code:) [= 22 December 2014, 14:08
by
- Changed lines 39-53 from:
=java122 [= Container = new CompositionContainer( new AggregateCatalog( new AssemblyCatalog( Assembly.GetExecutingAssembly() ) , new AssemblyCatalog( Assembly.LoadFrom( @"MEFVisualizer.Exe" ) ) ) ); Container.Compose( batch ); var meftoDgml = new MEFToDGML( Container){ IsNamespaceGrouping = true }; // The Visualizer meftoDgml.WriteToDGMLFile(); // Write to DGML file =] to:
(:code=csharp:) [= // C# source code goes here =] 22 December 2014, 14:07
by
- Changed lines 39-53 from:
to:
=java122 [= Container = new CompositionContainer( new AggregateCatalog( new AssemblyCatalog( Assembly.GetExecutingAssembly() ) , new AssemblyCatalog( Assembly.LoadFrom( @"MEFVisualizer.Exe" ) ) ) ); Container.Compose( batch ); var meftoDgml = new MEFToDGML( Container){ IsNamespaceGrouping = true }; // The Visualizer meftoDgml.WriteToDGMLFile(); // Write to DGML file =] 22 December 2014, 14:03
by
- Changed line 36 from:
to:
Helps to see what is going on inside the MEF Composition Container 22 December 2014, 14:03
by
- Changed lines 37-39 from:
Attach:MEF_Visualization to:
Attach:MEF_Visualization.png 22 December 2014, 14:02
by
- Changed lines 37-39 from:
Attach:MEF_Visualization.png to:
Attach:MEF_Visualization 22 December 2014, 14:02
by
- Changed lines 37-39 from:
Attach:komp-subkomp.png to:
Attach:MEF_Visualization.png 22 December 2014, 14:01
by
- Changed lines 37-39 from:
Attach:MEFVisualisation.png to:
Attach:komp-subkomp.png 22 December 2014, 14:01
by - 22 December 2014, 14:00
by
- Changed lines 37-39 from:
http://wiki.kiv.zcu.cz/uploads/UvodDoKomponent/MEF_Visualization to:
Attach:MEFVisualisation.png 22 December 2014, 14:00
by
- Changed lines 37-39 from:
Attach:MEF_Visualization.png to:
http://wiki.kiv.zcu.cz/uploads/UvodDoKomponent/MEF_Visualization 22 December 2014, 13:58
by
- Changed line 36 from:
(:attachlist:) to:
22 December 2014, 13:58
by
- Added line 36:
(:attachlist:) 22 December 2014, 13:56
by
- Changed lines 35-37 from:
h2. MEF Visualization to:
h2. MEF Visualizer Attach:MEF_Visualization.png 22 December 2014, 13:54
by
- Added lines 35-37:
h2. MEF Visualization 22 December 2014, 13:53
by
- Changed lines 5-7 from:
*System.Compostion.* is a lightweight version of MEF, which has been optimized for static composition scenarios and provides faster compositions. It is also the only version of MEF that is as a portable class library and can be used on phone, store, desktop and web applications. to:
*System.Compostion.[@*@] is a lightweight version of MEF, which has been optimized for static composition scenarios and provides faster compositions. It is also the only version of MEF that is as a portable class library and can be used on phone, store, desktop and web applications. 22 December 2014, 13:53
by
- Changed lines 5-7 from:
*System.Compostion.*_ is a lightweight version of MEF, which has been optimized for static composition scenarios and provides faster compositions. It is also the only version of MEF that is as a portable class library and can be used on phone, store, desktop and web applications. to:
*System.Compostion.* is a lightweight version of MEF, which has been optimized for static composition scenarios and provides faster compositions. It is also the only version of MEF that is as a portable class library and can be used on phone, store, desktop and web applications. 22 December 2014, 13:52
by
- Changed line 9 from:
DI is based on three dimensions, Object Composition, Lifetime Management, and Interception. to:
DI is based on three dimensions, Object Composition, Lifetime Management, and Interception. 22 December 2014, 13:52
by
- Changed line 35 from:
h1. Literature to:
h2. Literature Changed lines 38-39 from:
h1. TODO to:
h2. TODO 22 December 2014, 13:52
by
- Added lines 38-39:
h1. TODO 22 December 2014, 13:51
by
- Changed line 1 from:
h1. Introduction to:
h2. Introduction Changed line 8 from:
h1. MEF vs IoC Container to:
h2. MEF vs IoC Container Added lines 29-34:
Another .NET options: Unity Castle Windsor Ninject facilitates Spring.NET 22 December 2014, 13:49
by
- Added lines 7-8:
h1. MEF vs IoC Container Deleted lines 9-16:
Unity, Castle Windsor, Ninject facilitates, Spring.NET [[Dependency Injection in .NET -> http://www.amazon.com/Dependency-Injection-NET-Mark-Seemann/dp/1935182501]] Added lines 29-31:
h1. Literature [[Dependency Injection in .NET -> http://www.amazon.com/Dependency-Injection-NET-Mark-Seemann/dp/1935182501]] 18 December 2014, 01:06
by
- Added lines 37-38:
[[Barbarian Meets MEF -> http://www.barbarianmeetscoding.com/blog/2012/08/14/barbarian-meets-mef-managed-extensiblity-framework/]] 17 December 2014, 20:31
by
- Added lines 35-36:
[[Interception using Dependency Injection Container -> http://www.freeportmetrics.com/blog/interception-using-dependency-injection-container-unity-to-achieve-separation-of-concerns/]] 17 December 2014, 19:53
by
- Added lines 7-8:
DI is based on three dimensions, Object Composition, Lifetime Management, and Interception. Added lines 12-34:
[[Dependency Injection in .NET -> http://www.amazon.com/Dependency-Injection-NET-Mark-Seemann/dp/1935182501]] MEF has potential, but as a DI container, it lacks: 1. Code as Configuration 2. Auto Registration 3. XML configuration (not so important to me) 4. Custom Lifetimes 5. Interception Those things are pretty important. For Lifestyle it lacks: 1. Per graph 2. Web Request Context 3. Thread Context 4. Session Context 5. Pooled 6. Scoped 7. Custom Reference 17 December 2014, 19:50
by
- Changed lines 7-9 from:
to:
Unity, Castle Windsor, Ninject facilitates, Spring.NET 17 December 2014, 19:49
by
- Added lines 18-19:
[[Spring.NET -> http://the-tread-way.blogspot.cz/2010/04/springnet-attribute-driven.html]] 17 December 2014, 17:52
by
- Changed lines 22-23 from:
* http://www.mstv.cz/vyvojari/videos/239/Managed-Extensibility-Framework to:
* http://channel9.msdn.com/Blogs/JanSteberl/Managed-Extensibility-Framework Changed lines 28-29 from:
* http://www.slideshare.net/Mohamed_Meligy/managed-extensibility-framework-mef * http://channel9.msdn.com/Shows/10-4/10-4-Episode-26-Creating-Extensible-Applications-with-the-Managed-Extensibility-Framework to:
* http://www.slideshare.net/Mohamed_Meligy/managed-extensibility-framework-mef 17 December 2014, 01:17
by
- Deleted line 25:
* http://stackoverflow.com/questions/108116/mef-managed-extensibility-framework-vs-ioc-di 17 December 2014, 00:49
by
- Deleted line 18:
* http://mef.codeplex.com Changed lines 23-25 from:
* http://stackoverflow.com/questions/15572302/difference-between-mef-and-ioc-containers-likeunity-autofac-smap-ninject-windso * http://stackoverflow.com/questions/709532/is-mef-osgi-for-net * https://mef.codeplex.com/discussions/209827 to:
17 December 2014, 00:01
by
- Changed line 1 from:
Introduction to:
h1. Introduction Added line 9:
Added line 11:
Added lines 16-17:
[[MEF Programming Guide -> https://mef.codeplex.com/wikipage?title=Guide&referringTitle=Overview]] 16 December 2014, 23:56
by
- Added lines 12-13:
[[Hosting MEF Extensions in an IoC Container -> http://blogs.msdn.com/b/nblumhardt/archive/2009/03/16/hosting-mef-extensions-in-an-ioc-container.aspx]] 16 December 2014, 23:54
by
- Added lines 7-8:
[[In-Depth analysis of MEF Architecture -> https://kishore1021.wordpress.com/window-8-winrt/in-depth-analysis-of-mef-architecture/]] 16 December 2014, 23:45
by
- Changed line 1 from:
Introduciton to:
Introduction Changed lines 7-8 from:
http://www.slideshare.net/NunoCancelo/give-more-life-to-your-application-extending-it-with-mef to:
[[Lecture -> http://www.slideshare.net/NunoCancelo/give-more-life-to-your-application-extending-it-with-mef]] 16 December 2014, 23:39
by
- Changed line 4 from:
*System[@.@]ComponentModel[@.@]Composition.[@*@] which has shipped with .NET 4.0 and higher and Silverlight 4. This provides the standard extension model that has been used in Visual Studio. to:
*System.ComponentModel.Composition.[@*@] which has shipped with .NET 4.0 and higher and Silverlight 4. This provides the standard extension model that has been used in Visual Studio. Added lines 7-10:
http://www.slideshare.net/NunoCancelo/give-more-life-to-your-application-extending-it-with-mef [[MEF Runtime Plugin Swapping -> http://paxcel.net/blog/mef-runtime-plugin-swapping/]] 16 December 2014, 23:27
by
- Changed line 4 from:
*System.ComponentModel.Composition.[@*@] which has shipped with .NET 4.0 and higher and Silverlight 4. This provides the standard extension model that has been used in Visual Studio. to:
*System[@.@]ComponentModel[@.@]Composition.[@*@] which has shipped with .NET 4.0 and higher and Silverlight 4. This provides the standard extension model that has been used in Visual Studio. 16 December 2014, 23:26
by
- Added lines 1-6:
Introduciton The Managed Extensibility Framework (MEF) is a composition layer for .NET that improves the flexibility, maintainability and testability of large applications. MEF can be used for third-party plugin extensibility, or it can bring the benefits of a loosely-coupled plugin-like architecture to regular applications. *System.ComponentModel.Composition.[@*@] which has shipped with .NET 4.0 and higher and Silverlight 4. This provides the standard extension model that has been used in Visual Studio. *System.Compostion.*_ is a lightweight version of MEF, which has been optimized for static composition scenarios and provides faster compositions. It is also the only version of MEF that is as a portable class library and can be used on phone, store, desktop and web applications. 30 October 2014, 15:08
by
- Added lines 4-16:
* http://www.codeproject.com/Articles/56635/Managed-Extensibility-Framework * http://mef.codeplex.com/wikipage?title=Overview&referringTitle=Home * http://www.mstv.cz/vyvojari/videos/239/Managed-Extensibility-Framework * http://stackoverflow.com/questions/15572302/difference-between-mef-and-ioc-containers-likeunity-autofac-smap-ninject-windso * http://stackoverflow.com/questions/709532/is-mef-osgi-for-net * https://mef.codeplex.com/discussions/209827 * http://www.hanselman.com/blog/HanselminutesPodcast148MEFManagedExtensibilityFrameworkWithGlennBlock.aspx * http://stackoverflow.com/questions/216565/why-exactly-isnt-mef-a-di-ioc-container * http://stackoverflow.com/questions/108116/mef-managed-extensibility-framework-vs-ioc-di * http://msdn.microsoft.com/en-us/magazine/gg650670.aspx * http://the-tread-way.blogspot.cz/2010/04/springnet-attribute-driven.html * http://www.slideshare.net/Mohamed_Meligy/managed-extensibility-framework-mef * http://channel9.msdn.com/Shows/10-4/10-4-Episode-26-Creating-Extensible-Applications-with-the-Managed-Extensibility-Framework 30 October 2014, 14:55
by
- Changed lines 2-3 from:
http://mef.codeplex.com http://www.codeproject.com/Articles/188054/An-Introduction-to-Managed-Extensibility-Framework to:
* http://mef.codeplex.com * http://www.codeproject.com/Articles/188054/An-Introduction-to-Managed-Extensibility-Framework 30 October 2014, 14:54
by - 30 October 2014, 14:54
by
- Added line 3:
http://www.codeproject.com/Articles/188054/An-Introduction-to-Managed-Extensibility-Framework 30 October 2014, 14:54
by
- Added lines 1-2:
TODO http://mef.codeplex.com |