<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="/rss.xsl"?><rss version="2.0"><channel><title>MEF Issue Tracker Rss Feed</title><link>http://www.codeplex.com/MEF/WorkItem/List.aspx</link><description>MEF Issue Tracker Rss Description</description><item><title>Commented Issue: WP8 support missing in PCL assemblies! [14603]</title><link>http://mef.codeplex.com/workitem/14603</link><description>Since Windows Phone 8 is not checked as supported target framework in the MEF portable class libraries &amp;#40;currently only .NET for Windows Store apps and .NET Framework 4.5&amp;#41;, it will only work in emulator and not on a physical device. So in order to be able to share code between WinRT and WinPRT you have to rebuilt the MEF source yourself, with added support for WP8.&lt;br /&gt;&lt;br /&gt;Since the solution is as simple as that I hope there will be a release very soon, with common PCLs targeting all of the above, thus enabling shared assemblies between Windows Store apps and Windows Phone 8 apps for example.&lt;br /&gt;Comments: &amp;#43;1</description><author>erezak</author><pubDate>Mon, 18 Mar 2013 15:49:40 GMT</pubDate><guid isPermaLink="false">Commented Issue: WP8 support missing in PCL assemblies! [14603] 20130318034940P</guid></item><item><title>Created Issue: Plugin can't deserialize -? [14606]</title><link>http://mef.codeplex.com/workitem/14606</link><description>Hi,&lt;br /&gt;&lt;br /&gt;I&amp;#39;ve developed a plugin for my MEF application, and it uses it&amp;#39;s own serialize &amp;#47; deserialize utility for persisting state data &amp;#40;BinaryFormatter&amp;#41;. On it&amp;#39;s own outside of MEF, the plugin project works fine. However, when working with the MEF host, the plugin serialization util fails. While the plugin is able to serialize objects, when it tries to deserialize them &amp;#40;e.g., on the next line of code&amp;#41; it fails. The exception is that it is &amp;#34;unable to find assembly...&amp;#34; and the assembly it can&amp;#39;t find is it&amp;#39;s self &amp;#33;&amp;#33;&amp;#33;&amp;#33; &lt;br /&gt;&lt;br /&gt;By the way, the test object that was serialized is a dummy defined within the plugin project. No issues here. And, MEF solution, apart from this issue, seems to be working fine - Assemblies found, export&amp;#47;imports resolved.&lt;br /&gt;&lt;br /&gt;I&amp;#39;m new to MEF and so unsure what the problem is. Any thoughts appreciated. &lt;br /&gt;&lt;br /&gt;Thanks&amp;#33;&lt;br /&gt;wak&lt;br /&gt;</description><author>wak</author><pubDate>Fri, 15 Mar 2013 13:45:12 GMT</pubDate><guid isPermaLink="false">Created Issue: Plugin can't deserialize -? [14606] 20130315014512P</guid></item><item><title>Created Issue: DirectoryCatalog and assembly with same name, bug? [14605]</title><link>http://mef.codeplex.com/workitem/14605</link><description>Hi All,&lt;br /&gt;&lt;br /&gt;I have a scenario where my application &amp;#40;say Program.exe&amp;#41; runs from a Bin folder. There is a Bin&amp;#47;Plugins folder which has some more assemblies &amp;#40;say Plugin1.dll and Plugin2.dll&amp;#41;. For some reasons I also have a Plugin1.dll in the Bin folder. &amp;#40;So Plugin1.dll exists in Bin and in Plugins folder&amp;#41;. Both DLLs have a little different implementation &amp;#40;another story&amp;#33;&amp;#41;&lt;br /&gt;&lt;br /&gt;Next I am creating a DirectoryCatalog for Plugins Folder, and in the output log I see that as soon as I create a DirectoryCatalog for Plugins folder, MEF seems to load the Plugin1.dll from Bin folder, where as I expected it to load the Plugin1.dll from Bin&amp;#47;Plugins folder, as that is where the DirectoryCatalog points to.&lt;br /&gt;&lt;br /&gt;I think that even though internal code in DirectoryCatalog intends to load Bin&amp;#47;Plugin&amp;#47;Plugin1.dll, but when it actually loads the dll, it just loads it from the current folder where Program.exe is being run from.&lt;br /&gt;&lt;br /&gt;As a different test, I removed the Bin&amp;#47;Plugins&amp;#47;Plugin1.dll and kept the Plugin1.dll in Bin, then it does NOT even look for Plugin1.dll, so it confirms that while creating the DirectoryCatalog object, it certainly looks at Bin&amp;#47;Plugin folder &amp;#40;which is correct&amp;#41; but when it comes to load, it loads Plugin1.dll from the current folder, instead of the folder passed to DirectoryCatalog.&lt;br /&gt;&lt;br /&gt;Can anyone confirm that this is not the correct behavior, or if it is, then why&amp;#63;&lt;br /&gt;&lt;br /&gt;Thanks&amp;#33;&lt;br /&gt;Ravneet&lt;br /&gt;</description><author>ravneetg</author><pubDate>Thu, 28 Feb 2013 03:45:31 GMT</pubDate><guid isPermaLink="false">Created Issue: DirectoryCatalog and assembly with same name, bug? [14605] 20130228034531A</guid></item><item><title>Commented Issue: Shared part instantiated twice [14604]</title><link>http://mef.codeplex.com/workitem/14604</link><description>When a&amp;#58;&lt;br /&gt;&amp;#42; Shared part&lt;br /&gt;&amp;#42; Involved in a circular dependency&lt;br /&gt;&amp;#42; Has more than one export&lt;br /&gt;&lt;br /&gt;Then the part should be created only once but is instantiated twice.&lt;br /&gt;&lt;br /&gt;Found in version 1.0.16.&lt;br /&gt;&lt;br /&gt;Failing test case below.&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;        &amp;#91;Shared, Export, Export&amp;#40;&amp;#34;named&amp;#34;&amp;#41;&amp;#93;&lt;br /&gt;        public class TwoExports&lt;br /&gt;        &amp;#123;&lt;br /&gt;            &amp;#91;Import&amp;#93;&lt;br /&gt;            public CircularImporter Importer &amp;#123; get&amp;#59; set&amp;#59; &amp;#125;&lt;br /&gt;        &amp;#125;&lt;br /&gt;&lt;br /&gt;        &amp;#91;Shared, Export&amp;#93;&lt;br /&gt;        public class CircularImporter&lt;br /&gt;        &amp;#123;&lt;br /&gt;            &amp;#91;Import&amp;#93;&lt;br /&gt;            public TwoExports TwoExports &amp;#123; get&amp;#59; set&amp;#59; &amp;#125;&lt;br /&gt;        &amp;#125;&lt;br /&gt;&lt;br /&gt;        &amp;#91;TestMethod&amp;#93;&lt;br /&gt;        public void SharedPartWithManyExportsInCircularityCreatedOnce&amp;#40;&amp;#41;&lt;br /&gt;        &amp;#123;&lt;br /&gt;            var container &amp;#61; new ContainerConfiguration&amp;#40;&amp;#41;&lt;br /&gt;                .WithPart&amp;#60;TwoExports&amp;#62;&amp;#40;&amp;#41;&lt;br /&gt;                .WithPart&amp;#60;CircularImporter&amp;#62;&amp;#40;&amp;#41;&lt;br /&gt;                .CreateContainer&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;            var a &amp;#61; container.GetExport&amp;#60;TwoExports&amp;#62;&amp;#40;&amp;#34;named&amp;#34;&amp;#41;&amp;#59;&lt;br /&gt;            var b &amp;#61; container.GetExport&amp;#60;TwoExports&amp;#62;&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;            Assert.AreSame&amp;#40;a, b&amp;#41;&amp;#59;&lt;br /&gt;        &amp;#125;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;Comments: Issues is in DiscoveredPart.cs -&amp;#62; DiscoveredPart.GetActivator&amp;#40;&amp;#41;.&amp;#10;&amp;#10;This code is reentrant during activator creation, but doesn&amp;#39;t account for that fact. Because of this, it creates two activators for the one part&amp;#59; the activators themselves carry the shared instance, so two activators &amp;#61;&amp;#61; two shared instances.&amp;#10;&amp;#10;The fix is simple - the class just needs to detect when it is already initialising, and return a thunk in that case. The class is single-threaded so no synchronisation is required.&amp;#10;&amp;#10;First the class needs a Boolean to track whether initialisation of the activator has started&amp;#58;&amp;#10;&amp;#10;&amp;#96;&amp;#96;&amp;#96;&amp;#10;        bool _activatorCreationStarted&amp;#59;&amp;#10;&amp;#96;&amp;#96;&amp;#96;&amp;#10;&amp;#10;Then after the initial check in GetActivator&amp;#40;&amp;#41;&amp;#58;&amp;#10;&amp;#10;&amp;#96;&amp;#96;&amp;#96;&amp;#10;        public CompositeActivator GetActivator&amp;#40;DependencyAccessor definitionAccessor, IEnumerable&amp;#60;CompositionDependency&amp;#62; dependencies&amp;#41;&amp;#10;        &amp;#123;&amp;#10;            if &amp;#40;_partActivator &amp;#33;&amp;#61; null&amp;#41; return _partActivator&amp;#59;&amp;#10;&amp;#96;&amp;#96;&amp;#96;&amp;#10;&amp;#10;We insert a new condition&amp;#58;&amp;#10;&amp;#10;&amp;#96;&amp;#96;&amp;#96;&amp;#10;            if &amp;#40;_activatorCreationStarted&amp;#41;&amp;#10;                return &amp;#40;c, o&amp;#41; &amp;#61;&amp;#62; _partActivator&amp;#40;c, o&amp;#41;&amp;#59;&amp;#10;            _activatorCreationStarted &amp;#61; true&amp;#59;&amp;#10;&amp;#96;&amp;#96;&amp;#96;&amp;#10;&amp;#10;The tests now pass, including the new one in the issue above.</description><author>nblumhardt</author><pubDate>Tue, 12 Feb 2013 22:56:58 GMT</pubDate><guid isPermaLink="false">Commented Issue: Shared part instantiated twice [14604] 20130212105658P</guid></item><item><title>Created Issue: Shared part instantiated twice [14604]</title><link>http://mef.codeplex.com/workitem/14604</link><description>When a&amp;#58;&lt;br /&gt;&amp;#42; Shared part&lt;br /&gt;&amp;#42; Involved in a circular dependency&lt;br /&gt;&amp;#42; Has more than one export&lt;br /&gt;&lt;br /&gt;Then the part should be created only once but is instantiated twice.&lt;br /&gt;&lt;br /&gt;Found in version 1.0.16.&lt;br /&gt;&lt;br /&gt;Failing test case below.&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;        &amp;#91;Shared, Export, Export&amp;#40;&amp;#34;named&amp;#34;&amp;#41;&amp;#93;&lt;br /&gt;        public class TwoExports&lt;br /&gt;        &amp;#123;&lt;br /&gt;            &amp;#91;Import&amp;#93;&lt;br /&gt;            public CircularImporter Importer &amp;#123; get&amp;#59; set&amp;#59; &amp;#125;&lt;br /&gt;        &amp;#125;&lt;br /&gt;&lt;br /&gt;        &amp;#91;Shared, Export&amp;#93;&lt;br /&gt;        public class CircularImporter&lt;br /&gt;        &amp;#123;&lt;br /&gt;            &amp;#91;Import&amp;#93;&lt;br /&gt;            public TwoExports TwoExports &amp;#123; get&amp;#59; set&amp;#59; &amp;#125;&lt;br /&gt;        &amp;#125;&lt;br /&gt;&lt;br /&gt;        &amp;#91;TestMethod&amp;#93;&lt;br /&gt;        public void SharedPartWithManyExportsInCircularityCreatedOnce&amp;#40;&amp;#41;&lt;br /&gt;        &amp;#123;&lt;br /&gt;            var container &amp;#61; new ContainerConfiguration&amp;#40;&amp;#41;&lt;br /&gt;                .WithPart&amp;#60;TwoExports&amp;#62;&amp;#40;&amp;#41;&lt;br /&gt;                .WithPart&amp;#60;CircularImporter&amp;#62;&amp;#40;&amp;#41;&lt;br /&gt;                .CreateContainer&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;            var a &amp;#61; container.GetExport&amp;#60;TwoExports&amp;#62;&amp;#40;&amp;#34;named&amp;#34;&amp;#41;&amp;#59;&lt;br /&gt;            var b &amp;#61; container.GetExport&amp;#60;TwoExports&amp;#62;&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;            Assert.AreSame&amp;#40;a, b&amp;#41;&amp;#59;&lt;br /&gt;        &amp;#125;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;</description><author>nblumhardt</author><pubDate>Wed, 30 Jan 2013 06:12:56 GMT</pubDate><guid isPermaLink="false">Created Issue: Shared part instantiated twice [14604] 20130130061256A</guid></item><item><title>Commented Issue: If a base class has an import that fails the exception does not give the right reason [8492]</title><link>http://mef.codeplex.com/workitem/8492</link><description>In the code below the test fails until you un-comment on the line &amp;#34;var typeCatalog &amp;#61; new TypeCatalog&amp;#40;typeof&amp;#40;Foo&amp;#41;&amp;#41;&amp;#59;&amp;#47;&amp;#47;, typeof&amp;#40;Bar&amp;#41;&amp;#41;&amp;#59;&amp;#34;. Then the test works.&lt;br /&gt;&lt;br /&gt;FooImporter is a class that imports Foo. The Foo has a base class FooBase. FooBase has an import on IBar. The contract IBar is not possible to satisfy without the type Bar that exports the contract IBar.&lt;br /&gt;&lt;br /&gt;If I try to satisfy imports on Foo without the container knowing Bar the error reported is not that an IBar Export is missing. The error is that IFoo is missing which it technically is not. It is present but has a child that is missing.&lt;br /&gt;&lt;br /&gt;On the other hand if you try to satisfy imports on the Foo class direct the error shows that IBar is missing &amp;#40;second test&amp;#41;.&lt;br /&gt;&lt;br /&gt;As I see it there is a break in the error reporting causing the erroneous assumption that IFoo is missing when it is IBar that is missing. But only when Foo is not the root of the graph satisfied by MEF.&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;&lt;br /&gt;M.&lt;br /&gt;&lt;br /&gt;&amp;#91;TestClass&amp;#93;&lt;br /&gt;public class MEFBadBaseImportTests&lt;br /&gt;&amp;#123;&lt;br /&gt;&amp;#9;&amp;#91;TestMethod&amp;#93;&lt;br /&gt;&amp;#9;public void Bad_base_class_messes_up_the_error_message&amp;#40;&amp;#41;&lt;br /&gt;&amp;#9;&amp;#123;&lt;br /&gt;&amp;#9;&amp;#9;var typeCatalog &amp;#61; new TypeCatalog&amp;#40;typeof&amp;#40;Foo&amp;#41;&amp;#41;&amp;#59;&amp;#47;&amp;#47;, typeof&amp;#40;Bar&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#9;var compositionContainer &amp;#61; new CompositionContainer&amp;#40;typeCatalog&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;&amp;#9;&amp;#9;var fooImporter &amp;#61; new FooImporter&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;&amp;#9;&amp;#9;try&lt;br /&gt;&amp;#9;&amp;#9;&amp;#123;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;compositionContainer.SatisfyImportsOnce&amp;#40;fooImporter&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#125;&lt;br /&gt;&amp;#9;&amp;#9;catch &amp;#40;CompositionException ce&amp;#41;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#123;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;var stringBuilder &amp;#61; new StringBuilder&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;stringBuilder.AppendLine&amp;#40;&amp;#34;Message&amp;#58;&amp;#34;&amp;#41;.AppendLine&amp;#40;ce.Message&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;stringBuilder.AppendLine&amp;#40;new string&amp;#40;&amp;#39;&amp;#42;&amp;#39;, 42&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;foreach &amp;#40;var error in ce.Errors&amp;#41;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;&amp;#123;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;&amp;#9;stringBuilder.AppendLine&amp;#40;&amp;#34;Error&amp;#58;&amp;#34;&amp;#41;.AppendLine&amp;#40;error.Exception.Message&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;&amp;#9;stringBuilder.AppendLine&amp;#40;new string&amp;#40;&amp;#39;&amp;#42;&amp;#39;, 42&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;&amp;#125;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;Assert.Fail&amp;#40;stringBuilder.ToString&amp;#40;&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#125;&lt;br /&gt;&lt;br /&gt;&amp;#9;&amp;#9;Assert.IsNotNull&amp;#40;fooImporter.Foo&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#125;&lt;br /&gt;&lt;br /&gt;&amp;#9;&amp;#91;TestMethod&amp;#93;&lt;br /&gt;&amp;#9;public void Using_the_class_direct_shows_the_correct_error&amp;#40;&amp;#41;&lt;br /&gt;&amp;#9;&amp;#123;&lt;br /&gt;&amp;#9;&amp;#9;var typeCatalog &amp;#61; new TypeCatalog&amp;#40;typeof&amp;#40;Foo&amp;#41;&amp;#41;&amp;#59;&amp;#47;&amp;#47;, typeof&amp;#40;Bar&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#9;var compositionContainer &amp;#61; new CompositionContainer&amp;#40;typeCatalog&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;&amp;#9;&amp;#9;var foo &amp;#61; new Foo&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;&amp;#9;&amp;#9;try&lt;br /&gt;&amp;#9;&amp;#9;&amp;#123;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;compositionContainer.SatisfyImportsOnce&amp;#40;foo&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#125;&lt;br /&gt;&amp;#9;&amp;#9;catch &amp;#40;CompositionException ce&amp;#41;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#123;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;var stringBuilder &amp;#61; new StringBuilder&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;stringBuilder.AppendLine&amp;#40;&amp;#34;Message&amp;#58;&amp;#34;&amp;#41;.AppendLine&amp;#40;ce.Message&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;stringBuilder.AppendLine&amp;#40;new string&amp;#40;&amp;#39;&amp;#42;&amp;#39;, 42&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;foreach &amp;#40;var error in ce.Errors&amp;#41;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;&amp;#123;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;&amp;#9;stringBuilder.AppendLine&amp;#40;&amp;#34;Error&amp;#58;&amp;#34;&amp;#41;.AppendLine&amp;#40;error.Exception.Message&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;&amp;#9;stringBuilder.AppendLine&amp;#40;new string&amp;#40;&amp;#39;&amp;#42;&amp;#39;, 42&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;&amp;#125;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;Assert.Fail&amp;#40;stringBuilder.ToString&amp;#40;&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#125;&lt;br /&gt;&lt;br /&gt;&amp;#9;&amp;#9;Assert.IsNotNull&amp;#40;foo.Bar&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#125;&lt;br /&gt;&lt;br /&gt;&amp;#9;public interface IFoo &amp;#123; &amp;#125;&lt;br /&gt;&lt;br /&gt;&amp;#9;public interface IBar &amp;#123; &amp;#125;&lt;br /&gt;&lt;br /&gt;&amp;#9;public abstract class FooBase &amp;#58; IFoo&lt;br /&gt;&amp;#9;&amp;#123;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#91;Import&amp;#93;&lt;br /&gt;&amp;#9;&amp;#9;public IBar Bar &amp;#123; get&amp;#59; set&amp;#59; &amp;#125;&lt;br /&gt;&amp;#9;&amp;#125;&lt;br /&gt;&lt;br /&gt;&amp;#9;&amp;#91;Export&amp;#40;typeof&amp;#40;IFoo&amp;#41;&amp;#41;&amp;#93;&lt;br /&gt;&amp;#9;public class Foo &amp;#58; FooBase&lt;br /&gt;&amp;#9;&amp;#123; &amp;#125;&lt;br /&gt;&lt;br /&gt;&amp;#9;&amp;#91;Export&amp;#40;typeof&amp;#40;IBar&amp;#41;&amp;#41;&amp;#93;&lt;br /&gt;&amp;#9;public class Bar &amp;#58; IBar &amp;#123; &amp;#125;&lt;br /&gt;&lt;br /&gt;&amp;#9;public class FooImporter&lt;br /&gt;&amp;#9;&amp;#123;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#91;Import&amp;#93;&lt;br /&gt;&amp;#9;&amp;#9;public IFoo Foo &amp;#123; get&amp;#59; set&amp;#59; &amp;#125;&lt;br /&gt;&amp;#9;&amp;#125;&lt;br /&gt;&amp;#125;&lt;br /&gt;Comments: I ran into the same issue. Very misleading message....</description><author>vivmaha</author><pubDate>Tue, 01 Jan 2013 04:56:55 GMT</pubDate><guid isPermaLink="false">Commented Issue: If a base class has an import that fails the exception does not give the right reason [8492] 20130101045655A</guid></item><item><title>Created Issue: WP8 support missing in PCL assemblies! [14603]</title><link>http://mef.codeplex.com/workitem/14603</link><description>Since Windows Phone 8 is not checked as supported target framework in the MEF portable class libraries &amp;#40;currently only .NET for Windows Store apps and .NET Framework 4.5&amp;#41;, it will only work in emulator and not on a physical device. So in order to be able to share code between WinRT and WinPRT you have to rebuilt the MEF source yourself, with added support for WP8.&lt;br /&gt;&lt;br /&gt;Since the solution is as simple as that I hope there will be a release very soon, with common PCLs targeting all of the above, thus enabling shared assemblies between Windows Store apps and Windows Phone 8 apps for example.&lt;br /&gt;</description><author>Will_o_Wisp</author><pubDate>Tue, 11 Dec 2012 19:11:02 GMT</pubDate><guid isPermaLink="false">Created Issue: WP8 support missing in PCL assemblies! [14603] 20121211071102P</guid></item><item><title>Commented Issue: Missing Component DeploymentCatalog [14602]</title><link>http://mef.codeplex.com/workitem/14602</link><description>I moved some code from the 4.0 framework to the 4.5 framework and the object System.ComponentModel.Composition.Hosting.DeploymentCatalog doesn&amp;#39;t exist anymore.&lt;br /&gt;Comments: I copied the older DLLs from another project and now I get this error&amp;#58;&amp;#10;&amp;#10;&amp;#123;System.IO.FileNotFoundException&amp;#58; Could not load file or assembly &amp;#39;System.Threading.Tasks, Version&amp;#61;2.5.11.0, Culture&amp;#61;neutral, PublicKeyToken&amp;#61;b03f5f7f11d50a3a&amp;#39; or one of its dependencies. The system cannot find the file specified.&amp;#10;File name&amp;#58; &amp;#39;System.Threading.Tasks, Version&amp;#61;2.5.11.0, Culture&amp;#61;neutral, PublicKeyToken&amp;#61;b03f5f7f11d50a3a&amp;#39;&amp;#125;&amp;#10;&amp;#10;When I new up a Deployment Catalog.  The version in the GAC is 4.0.0.0.  The code is simple&amp;#58;&amp;#10;&amp;#10;            aggregateCatalog &amp;#61; new AggregateCatalog&amp;#40;&amp;#41;&amp;#59;&amp;#10;            aggregateCatalog.Catalogs.Add&amp;#40;new DeploymentCatalog&amp;#40;&amp;#41;&amp;#41;&amp;#59;&amp;#10;&amp;#10;Any idea on what to do&amp;#63;</description><author>thaehn</author><pubDate>Fri, 07 Dec 2012 22:36:55 GMT</pubDate><guid isPermaLink="false">Commented Issue: Missing Component DeploymentCatalog [14602] 20121207103655P</guid></item><item><title>Created Issue: Missing Component DeploymentCatalog [14602]</title><link>http://mef.codeplex.com/workitem/14602</link><description>I moved some code from the 4.0 framework to the 4.5 framework and the object System.ComponentModel.Composition.Hosting.DeploymentCatalog doesn&amp;#39;t exist anymore.&lt;br /&gt;</description><author>thaehn</author><pubDate>Wed, 05 Dec 2012 22:15:38 GMT</pubDate><guid isPermaLink="false">Created Issue: Missing Component DeploymentCatalog [14602] 20121205101538P</guid></item><item><title>Created Issue: Couple of very hindering issues with RegistrationBuilder [14601]</title><link>http://mef.codeplex.com/workitem/14601</link><description>Hi everyone,&lt;br /&gt;&lt;br /&gt;I found several issues with RegistrationBuilder that are quite strange...can anyone confirm are they really like this or&amp;#63;&lt;br /&gt;&lt;br /&gt;1&amp;#41; When defining convention on generic interface to export interface&lt;br /&gt;&lt;br /&gt;builder.ForTypesDerivedFrom&amp;#40;typeof&amp;#40;IRepository&amp;#60;&amp;#62;&amp;#41;&amp;#41;.Export&amp;#40;b &amp;#61;&amp;#62; b.AsContractType&amp;#40;typeof&amp;#40;IRepository&amp;#60;&amp;#62;&amp;#41;&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;This doesn&amp;#39;t work for me...when I put concrete type and start with ForTypes&amp;#40;&amp;#41; than it works...but that is not what I need, for every type then I need to repeat. &lt;br /&gt;&lt;br /&gt;This works for non generic exports, only not for generic ones&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2&amp;#41;  When wanting to use the builder for properties...is it possible that for every property we need to define ImportProperty&amp;#63;&amp;#63;&lt;br /&gt;&lt;br /&gt;That means that this case is not possible&amp;#58;&lt;br /&gt;&lt;br /&gt;builder.ForTypesDerivedFrom&amp;#60;Window&amp;#62;&amp;#40;&amp;#41;.Export&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;But instead for each window I need to define&amp;#58;&lt;br /&gt;&lt;br /&gt;builder.ForType&amp;#60;ListingsWindow&amp;#62;&amp;#40;&amp;#41;.ImportProperty&amp;#40;w &amp;#61;&amp;#62; w.ListingsRepository&amp;#41;.Export&amp;#60;ListingsWindow&amp;#62;&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;Is that possible&amp;#63;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3&amp;#41; Rewriting &amp;#91;ImportMany&amp;#93; properties to Builder approach not working when having metadata defined&lt;br /&gt;&lt;br /&gt;So when having property&lt;br /&gt;&lt;br /&gt;public IEnumerable&amp;#60;Lazy&amp;#60;IRepository&amp;#60;Listing&amp;#62;, IRepositoryMeta&amp;#62;&amp;#62; ListingsRepositories &amp;#123; get&amp;#59; set&amp;#59; &amp;#125;&lt;br /&gt;&lt;br /&gt;This does not work in any case&amp;#63;&lt;br /&gt;&lt;br /&gt;When I put it in constructor as constructor binding of &amp;#42;Many properties works, it only works if I remove the Lazy&amp;#60;...IMeta&amp;#62;, so if its a direct binding of IEnumerable&amp;#60;IRepository&amp;#60;Listing&amp;#62;&amp;#62;.&lt;br /&gt;&lt;br /&gt;Is this possible&amp;#63;&amp;#63;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Kind regards,&lt;br /&gt;Vladan&lt;br /&gt;</description><author>Vladan</author><pubDate>Sat, 27 Oct 2012 14:32:50 GMT</pubDate><guid isPermaLink="false">Created Issue: Couple of very hindering issues with RegistrationBuilder [14601] 20121027023250P</guid></item><item><title>Closed Issue: Nuget for Portable Class [14600]</title><link>http://mef.codeplex.com/workitem/14600</link><description>Hello,&lt;br /&gt;&lt;br /&gt;I am trying to use MEF on a portable class library &amp;#40;supporting .NET 4.5 and Silverlight 5&amp;#41;, but I am getting this error with NuGet&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#62;&amp;#62;Could not install package &amp;#39;Microsoft.Composition 1.0.15&amp;#39;. You are trying to install this package into a project that targets &amp;#39;.NETPortable,Version&amp;#61;v4.0,Profile&amp;#61;Profile24&amp;#39;, but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author.&lt;br /&gt;&lt;br /&gt;Comments: The package has now been update to support being targeted by portable librarise</description><author>alokshriram</author><pubDate>Mon, 22 Oct 2012 19:19:03 GMT</pubDate><guid isPermaLink="false">Closed Issue: Nuget for Portable Class [14600] 20121022071903P</guid></item><item><title>Commented Issue: Nuget for Portable Class [14600]</title><link>http://mef.codeplex.com/workitem/14600</link><description>Hello,&lt;br /&gt;&lt;br /&gt;I am trying to use MEF on a portable class library &amp;#40;supporting .NET 4.5 and Silverlight 5&amp;#41;, but I am getting this error with NuGet&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#62;&amp;#62;Could not install package &amp;#39;Microsoft.Composition 1.0.15&amp;#39;. You are trying to install this package into a project that targets &amp;#39;.NETPortable,Version&amp;#61;v4.0,Profile&amp;#61;Profile24&amp;#39;, but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author.&lt;br /&gt;&lt;br /&gt;Comments: The version of MEF that can be used to target portable class libraries is now uploaded.  Please update your NuGet package to get the latest bits.  However please make sure that you have the latest version of NuGet.&amp;#10;http&amp;#58;&amp;#47;&amp;#47;docs.nuget.org&amp;#47;docs&amp;#47;start-here&amp;#47;installing-nuget&amp;#10;&amp;#10;thanks</description><author>alokshriram</author><pubDate>Mon, 22 Oct 2012 19:18:31 GMT</pubDate><guid isPermaLink="false">Commented Issue: Nuget for Portable Class [14600] 20121022071831P</guid></item><item><title>Commented Issue: Nuget for Portable Class [14600]</title><link>http://mef.codeplex.com/workitem/14600</link><description>Hello,&lt;br /&gt;&lt;br /&gt;I am trying to use MEF on a portable class library &amp;#40;supporting .NET 4.5 and Silverlight 5&amp;#41;, but I am getting this error with NuGet&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#62;&amp;#62;Could not install package &amp;#39;Microsoft.Composition 1.0.15&amp;#39;. You are trying to install this package into a project that targets &amp;#39;.NETPortable,Version&amp;#61;v4.0,Profile&amp;#61;Profile24&amp;#39;, but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author.&lt;br /&gt;&lt;br /&gt;Comments: We are aware of this issue. Hang tight, we should have this fixed really soon. Will update here when we do so.&amp;#10;thanks&amp;#10;-alok</description><author>alokshriram</author><pubDate>Fri, 19 Oct 2012 16:25:55 GMT</pubDate><guid isPermaLink="false">Commented Issue: Nuget for Portable Class [14600] 20121019042555P</guid></item><item><title>Created Issue: Nuget for Portable Class [14600]</title><link>http://mef.codeplex.com/workitem/14600</link><description>Hello,&lt;br /&gt;&lt;br /&gt;I am trying to use MEF on a portable class library &amp;#40;supporting .NET 4.5 and Silverlight 5&amp;#41;, but I am getting this error with NuGet&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#62;&amp;#62;Could not install package &amp;#39;Microsoft.Composition 1.0.15&amp;#39;. You are trying to install this package into a project that targets &amp;#39;.NETPortable,Version&amp;#61;v4.0,Profile&amp;#61;Profile24&amp;#39;, but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author.&lt;br /&gt;&lt;br /&gt;</description><author>vbgraphix</author><pubDate>Wed, 17 Oct 2012 20:34:50 GMT</pubDate><guid isPermaLink="false">Created Issue: Nuget for Portable Class [14600] 20121017083450P</guid></item><item><title>Commented Issue: Method Exports do not work with Registration Builder [14570]</title><link>http://mef.codeplex.com/workitem/14570</link><description>See discussion thread&amp;#58; http&amp;#58;&amp;#47;&amp;#47;mef.codeplex.com&amp;#47;discussions&amp;#47;283605&amp;#35;post714795&lt;br /&gt;&lt;br /&gt;Parts with &amp;#91;Export&amp;#93;s on methods cannot be composed if a RegistrationBuilder is in use.&lt;br /&gt;Comments: Sorry - the closing message on this issue is incorrect. I believe the bug has been fixed in .NET 4.5 Framework RC and later builds.</description><author>nblumhardt</author><pubDate>Wed, 18 Jul 2012 23:36:49 GMT</pubDate><guid isPermaLink="false">Commented Issue: Method Exports do not work with Registration Builder [14570] 20120718113649P</guid></item><item><title>Closed Issue: Open Generic Support Doesnt Work With Delegate-Type Arguments [14594]</title><link>http://mef.codeplex.com/workitem/14594</link><description>Given this export&amp;#58;&lt;br /&gt;&amp;#91;Export&amp;#40;typeof&amp;#40;Foo&amp;#60;&amp;#62;&amp;#41;&amp;#41;&amp;#93;&lt;br /&gt;public class Foo&amp;#60;T&amp;#62;&lt;br /&gt;&amp;#123;&lt;br /&gt;&amp;#125;&lt;br /&gt;&lt;br /&gt;This works&amp;#58;&lt;br /&gt;provider.GetExports&amp;#60;Foo&amp;#60;int&amp;#62;&amp;#62;&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;But doesnt work with delegate types&amp;#58;&lt;br /&gt;provider.GetExports&amp;#60;Foo&amp;#60;Action&amp;#62;&amp;#62;&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Comments: We&amp;#39;ve moved this issue to our internal system and will continue to track it for a future release, however we do not plan to take action on this in the short term. Thank you for the report with repro, much appreciated.</description><author>nblumhardt</author><pubDate>Wed, 18 Jul 2012 23:34:02 GMT</pubDate><guid isPermaLink="false">Closed Issue: Open Generic Support Doesnt Work With Delegate-Type Arguments [14594] 20120718113402P</guid></item><item><title>Closed Issue: Method Exports do not work with Registration Builder [14570]</title><link>http://mef.codeplex.com/workitem/14570</link><description>See discussion thread&amp;#58; http&amp;#58;&amp;#47;&amp;#47;mef.codeplex.com&amp;#47;discussions&amp;#47;283605&amp;#35;post714795&lt;br /&gt;&lt;br /&gt;Parts with &amp;#91;Export&amp;#93;s on methods cannot be composed if a RegistrationBuilder is in use.&lt;br /&gt;Comments: We&amp;#39;ve moved this issue to our internal system for future tracking, but don&amp;#39;t expect to take action on this in the short term.&amp;#10;&amp;#10;The recommended workaround is to use property exports in place of method exports when using RegistrationBuilder &amp;#40;properties of delegate types behave equivalently to method exports&amp;#41;.&amp;#10;&amp;#10;Thanks for following up.</description><author>nblumhardt</author><pubDate>Wed, 18 Jul 2012 23:10:27 GMT</pubDate><guid isPermaLink="false">Closed Issue: Method Exports do not work with Registration Builder [14570] 20120718111027P</guid></item><item><title>Closed Issue: Exception on multiple open generic exports of same arity [14586]</title><link>http://mef.codeplex.com/workitem/14586</link><description>Here is a test case&amp;#58;&lt;br /&gt;&lt;br /&gt;        &amp;#91;TestMethod&amp;#93;&lt;br /&gt;        public void MultipleOpenGenericExports&amp;#40;&amp;#41;&lt;br /&gt;        &amp;#123;&lt;br /&gt;            var container &amp;#61; new CompositionContainer&amp;#40; new TypeCatalog&amp;#40; typeof&amp;#40; GenericPart&amp;#60;&amp;#62; &amp;#41; &amp;#41; &amp;#41;&amp;#59;&lt;br /&gt;            var obj &amp;#61; new GenericImporter&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;            container.SatisfyImportsOnce&amp;#40; obj &amp;#41;&amp;#59;&lt;br /&gt;        &amp;#125;&lt;br /&gt;&lt;br /&gt;        public interface IGenericA&amp;#60;T&amp;#62; &amp;#123; &amp;#125;&lt;br /&gt;        public interface IGenericB&amp;#60;T&amp;#62; &amp;#123; &amp;#125;&lt;br /&gt;&lt;br /&gt;        &amp;#91;Export&amp;#40; typeof&amp;#40; IGenericA&amp;#60;&amp;#62; &amp;#41; &amp;#41;&amp;#93;&lt;br /&gt;        &amp;#91;Export&amp;#40; typeof&amp;#40; IGenericB&amp;#60;&amp;#62; &amp;#41; &amp;#41;&amp;#93;&lt;br /&gt;        public class GenericPart&amp;#60;T&amp;#62; &amp;#58; IGenericA&amp;#60;T&amp;#62;, IGenericB&amp;#60;T&amp;#62; &amp;#123; &amp;#125;&lt;br /&gt;&lt;br /&gt;        public class GenericImporter&lt;br /&gt;        &amp;#123;&lt;br /&gt;            &amp;#91;Import&amp;#93; public IGenericA&amp;#60;int&amp;#62; ImportedProperty &amp;#123; get&amp;#59; set&amp;#59; &amp;#125;&lt;br /&gt;        &amp;#125;&lt;br /&gt;&lt;br /&gt;This case causes an exception saying that &amp;#34;there are more than one export for IGenericA&amp;#40;Int32&amp;#41;&amp;#34;.&lt;br /&gt;This happens because of how the ReflectionComposablePartDefinition.GetCandidateParameters method is implemented&amp;#58; when there are multiple open generic exports with same arity, the method will yield as many identical results as there are such exports, resulting in that many identical exports returned from TryGetExports.&lt;br /&gt;&lt;br /&gt;One possible fix &amp;#40;that I have implemented for my own use&amp;#41; is to call a Distinct operator on the result of GetCandidateParameters&amp;#58;&lt;br /&gt;&lt;br /&gt;    foreach &amp;#40;Type&amp;#91;&amp;#93; candidateParameters in this.GetCandidateParameters&amp;#40;genericTypeParameters&amp;#41;.Distinct&amp;#40; TypeArrayComparer.Instance &amp;#41; &amp;#41;&lt;br /&gt;&lt;br /&gt;Where TypeArrayComparer is a trivial implementation if IEqualityComparer&amp;#60;Type&amp;#91;&amp;#93;&amp;#62;&amp;#58;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;        class TypeArrayComparer &amp;#58; IEqualityComparer&amp;#60;Type&amp;#91;&amp;#93;&amp;#62;&lt;br /&gt;        &amp;#123;&lt;br /&gt;            public static readonly TypeArrayComparer Instance &amp;#61; new TypeArrayComparer&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;            public bool Equals&amp;#40; Type&amp;#91;&amp;#93; x, Type&amp;#91;&amp;#93; y &amp;#41;&lt;br /&gt;            &amp;#123;&lt;br /&gt;                if &amp;#40; x &amp;#61;&amp;#61; null &amp;#41; return y &amp;#61;&amp;#61; null&amp;#59;&lt;br /&gt;                if &amp;#40; y &amp;#61;&amp;#61; null &amp;#41; return false&amp;#59;&lt;br /&gt;                if &amp;#40; x.Length &amp;#33;&amp;#61; y.Length &amp;#41; return false&amp;#59;&lt;br /&gt;                for &amp;#40; int i &amp;#61; 0&amp;#59; i &amp;#60; x.Length&amp;#59; i&amp;#43;&amp;#43; &amp;#41; if &amp;#40; x&amp;#91;i&amp;#93; &amp;#33;&amp;#61; y&amp;#91;i&amp;#93; &amp;#41; return false&amp;#59;&lt;br /&gt;                return true&amp;#59;&lt;br /&gt;            &amp;#125;&lt;br /&gt;&lt;br /&gt;            public int GetHashCode&amp;#40; Type&amp;#91;&amp;#93; obj &amp;#41;&lt;br /&gt;            &amp;#123;&lt;br /&gt;                if &amp;#40; obj &amp;#61;&amp;#61; null &amp;#41; return 0&amp;#59;&lt;br /&gt;                var hash &amp;#61; 0&amp;#59;&lt;br /&gt;                foreach &amp;#40; var t in obj &amp;#41; hash &amp;#43;&amp;#61; t.GetHashCode&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;                return hash&amp;#59;&lt;br /&gt;            &amp;#125;&lt;br /&gt;        &amp;#125;&lt;br /&gt;&lt;br /&gt;Comments: This issue is fixed in the .NET Framework 4.5 RC and later. Thank you for the detailed report.</description><author>nblumhardt</author><pubDate>Wed, 18 Jul 2012 23:07:02 GMT</pubDate><guid isPermaLink="false">Closed Issue: Exception on multiple open generic exports of same arity [14586] 20120718110702P</guid></item><item><title>Closed Issue: MEF DirectoryCatalog not override the Project References at time of Loading [14593]</title><link>http://mef.codeplex.com/workitem/14593</link><description>I have a interface as follows&amp;#58;&lt;br /&gt;&lt;br /&gt;    &amp;#91;InheritedExport&amp;#40;typeof&amp;#40;ITransform&amp;#41;&amp;#41;&amp;#93;&lt;br /&gt;    public interface ITransform&lt;br /&gt;    &amp;#123;...&amp;#125;&lt;br /&gt;&lt;br /&gt;Now, I have two classes&amp;#58;&lt;br /&gt;&lt;br /&gt;    namespace ProjectA&lt;br /&gt;    &amp;#123;&lt;br /&gt;        public class Transform&amp;#58;ITransform &amp;#123;....&amp;#125;&lt;br /&gt;    &amp;#125;&lt;br /&gt;&lt;br /&gt;And&lt;br /&gt;&lt;br /&gt;    namespace ProjectB&lt;br /&gt;    &amp;#123;&lt;br /&gt;        public class Transform&amp;#58;ITransform &amp;#123;....&amp;#125;&lt;br /&gt;    &amp;#125;&lt;br /&gt;I have another project ProjectXYZ&amp;#40;auto generated by third party tool&amp;#40;Altova Mapforce 2012 SP1&amp;#41;&amp;#41;.&lt;br /&gt;&lt;br /&gt;For ProjectA customized auto generated code from altova mapforce 2012&amp;#58;&lt;br /&gt;&lt;br /&gt;    namespace ProjectXYZ &lt;br /&gt;    &amp;#123;&lt;br /&gt;        public classA&amp;#123;...&amp;#125;&lt;br /&gt;    &amp;#125;&lt;br /&gt;&lt;br /&gt;For ProjectB customized auto generated code from altova mapforce 2012&amp;#58;&lt;br /&gt;&lt;br /&gt;    namespace ProjectXYZ &lt;br /&gt;    &amp;#123;&lt;br /&gt;        public classA&amp;#123;...&amp;#125;&lt;br /&gt;        public classB&amp;#123;...&amp;#125;&lt;br /&gt;    &amp;#125;&lt;br /&gt;&lt;br /&gt; Third party auto generated codes are not exported, But its binaries I used as reference of ProjectA.Transform and ProjectB.Transform.So I am using &amp;#91;DirectoryCatalog&amp;#93; for loading all binaries of ProjectA.Transform and ProjectB.Transform in CompositionContainer of MEF. Each project is compiled and their binaries&amp;#40;build output&amp;#41; location is given as an input to DirectoryCatalog &lt;br /&gt;&lt;br /&gt;for further composition.&lt;br /&gt;&lt;br /&gt;extensionPath &amp;#61; Location of Debug directory of ProjectA.Transform and ProjectB.Transform.&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;     &amp;#91;1&amp;#93; C&amp;#58;&amp;#92;ProjectDemo&amp;#92;ProjectA.Transform&amp;#92;Bin&amp;#92;Debug&lt;br /&gt;&lt;br /&gt;     &amp;#91;2&amp;#93; C&amp;#58;&amp;#92;ProjectDemo&amp;#92;ProjectB.Transform&amp;#92;Bin&amp;#92;Debug&lt;br /&gt;&lt;br /&gt;The methd code for fetching ITransform parts is as follows&amp;#58;&lt;br /&gt;&lt;br /&gt;    public  class ExtensionFactory&lt;br /&gt;        &amp;#123;        &lt;br /&gt;            public ITransform GetExtension&amp;#40;string extensionPath&amp;#41;&lt;br /&gt;            &amp;#123;            &lt;br /&gt;                IEnumerable&amp;#60;ITransform&amp;#62; extensions &amp;#61; null&amp;#59;          &lt;br /&gt;                try&lt;br /&gt;                &amp;#123;                &lt;br /&gt;                    AggregateCatalog catalog &amp;#61; new AggregateCatalog&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;                    catalog.Catalogs.Add&amp;#40;new DirectoryCatalog&amp;#40;extensionPath&amp;#41;&amp;#41;&amp;#59;      &lt;br /&gt;                    CompositionContainer container &amp;#61; new CompositionContainer&amp;#40;catalog&amp;#41;&amp;#59;&lt;br /&gt;                    container.ComposeParts&amp;#40;this&amp;#41;&amp;#59;&lt;br /&gt;                    extensions &amp;#61; container.GetExportedValues&amp;#60;ITransform&amp;#62;&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;                    return extensions.FirstOrDefault&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;                &amp;#125;&lt;br /&gt;                catch &amp;#40;Exception ex&amp;#41; &amp;#123;........&amp;#125;&lt;br /&gt;                return extensions.FirstOrDefault&amp;#40;&amp;#41;&amp;#59; &lt;br /&gt;            &amp;#125;        &lt;br /&gt;        &amp;#125;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ProjectA.Transform uses ProjectXYZ.ClassA, whereas ProjectB.Transform uses ProjectXYZ.ClassB from another implementation of ProjectXYZ. The implementation and classes &lt;br /&gt;&lt;br /&gt;of ProjectXYZ varies across for different implementation of ITransform. The classes in ProjectXYZ are automatically generated through some third-party tools, which I &lt;br /&gt;&lt;br /&gt;need to use directly. So, I cannot make any changes to ProjectXYZ.&lt;br /&gt;&lt;br /&gt;So, when first time MEF loads ProjectA.Transform, it also loads ProjectXYZ to be used as a reference for ProjectA. When ProjectB.Transform is getting loaded&amp;#47;exported, &lt;br /&gt;&lt;br /&gt;then as ProjectXYZ Assemblies being already in MEF memory, it uses the ProjectXYZ Assemblies reference available from &amp;#42;&amp;#42;&amp;#34;C&amp;#58;&amp;#92;ProjectDemo&amp;#92;ProjectA.Transform&amp;#92;Bin&amp;#92;Debug&amp;#34;&amp;#42;&amp;#42;. Thus, when ProjectB.Transform is executing, it searches for ProjectXYZ Assemblies from  &amp;#42;&amp;#42;&amp;#34;C&amp;#58;&amp;#92;ProjectDemo&amp;#92;ProjectB.Transform&amp;#92;Bin&amp;#92;Debug&amp;#34;&amp;#42;&amp;#42;, which it does not gets as MEF has load ProjectXYZ Assemblies reference available in &amp;#42;&amp;#42;&amp;#34;C&amp;#58;&amp;#92;ProjectDemo&amp;#92;ProjectA.Transform&amp;#92;Bin&amp;#92;Debug&amp;#34;&amp;#42;&amp;#42;.&lt;br /&gt;&lt;br /&gt;How to resolve this problem. The MEF loads the parts correctly, but it does not load the supporting dll&amp;#39;s references in a desired manner. I have also tried &lt;br /&gt;&lt;br /&gt;PartCreationPolicy attribute, but the results are same.&lt;br /&gt;Here I attach the problem source code too.&lt;br /&gt;&amp;#91;1&amp;#93;&amp;#58; http&amp;#58;&amp;#47;&amp;#47;mef.codeplex.com&amp;#47;wikipage&amp;#63;title&amp;#61;Using&amp;#37;20Catalogs&lt;br /&gt;Comments: As noted on Stack Overflow this is the behavior of the .NET loader, not MEF. Thank you for the issue report.</description><author>nblumhardt</author><pubDate>Wed, 18 Jul 2012 23:05:02 GMT</pubDate><guid isPermaLink="false">Closed Issue: MEF DirectoryCatalog not override the Project References at time of Loading [14593] 20120718110502P</guid></item><item><title>Closed Issue: Expose reasons for ignoring types in TypeCatalog [14585]</title><link>http://mef.codeplex.com/workitem/14585</link><description>Hi,&lt;br /&gt;I&amp;#39;ve got confused when using MEF2 framework and hopefully this will help others if they get to the same problem.&lt;br /&gt;I&amp;#39;ve read about the new RegistrationBuilder which allow to use &amp;#34;register by convention&amp;#34; way. The nice thing there is that I don&amp;#39;t have to put ExportAttribute all over my types.&lt;br /&gt;&lt;br /&gt;I&amp;#39;ve got confused when try to use TypeCatalog by to create a catalog of types which do not have Export attribute on them. I fail to realize I have to either have Export attribute or pass a RegistrationBuilder to the TypeCatalog.&lt;br /&gt;&lt;br /&gt;1. It will be handy to have something like TypeCatalog to which I can pass types that I want to have in the catalog without the need to create RegistrationBuilder for them. I can think of corner cases like multiple ctors which may pose difficulty but maybe it worth thinking about.&lt;br /&gt;&lt;br /&gt;2. It will be helpful to know that a Type I&amp;#39;ve pass into TypeCatalog was not included in it and why. The behavior today is that the TypeCatalog silently ignore they types and it&amp;#39;s hard to understand why.&lt;br /&gt;&lt;br /&gt;3. What is the relation between the attribute programming model and the RegistrationBuilder&amp;#63; If I have Export attribute on a type and also pass RegistrationBuilder, which one is actually been used&amp;#63;&lt;br /&gt;&lt;br /&gt;Thank you,&lt;br /&gt;Ido.&lt;br /&gt;Comments: The ContainerConfiguration class in the Microsoft.Composition version of MEF now exposes an IgnoredTypes property when viewed in the debugger - this goes some way to aiding in this scenario.</description><author>nblumhardt</author><pubDate>Wed, 18 Jul 2012 23:03:08 GMT</pubDate><guid isPermaLink="false">Closed Issue: Expose reasons for ignoring types in TypeCatalog [14585] 20120718110308P</guid></item></channel></rss>