2011-04-05 77 views
2

在我的应用程序中,我有一个模块,我一直从外壳引用(只是当我得到的东西工作)。棱镜/ Mef目录目录SatisfyImports

protected override void ConfigureAggregateCatalog() 
    { 
     base.ConfigureAggregateCatalog(); 

     AggregateCatalog.Catalogs.Add(new AssemblyCatalog(typeof(Bootstrapper).Assembly));    
     AggregateCatalog.Catalogs.Add(new AssemblyCatalog(typeof(MyModule).Assembly)); 
    } 

在我的模块时,我一直在呼吁SatisfyImportsOnce此工作正常的观点,我可以看到所创建的视图模型等。

但是,我现在已将我的引导程序更改为使用directoryCatalog作为我的模块。我添加了一些后期构建事件来将我的模块组件,pdb等复制到shell。

所以,现在我已经在我的引导程序

protected override void ConfigureAggregateCatalog() 
    { 
     base.ConfigureAggregateCatalog(); 

     AggregateCatalog.Catalogs.Add(new AssemblyCatalog(typeof(Bootstrapper).Assembly)); 

     // add the directory catalog for the modules 
     AggregateCatalog.Catalogs.Add(new DirectoryCatalog("Modules")); 
    } 

我现在能够运行我的应用程序,看到从我的模块,但SatisfyImportsOnce所用现在的工作,似乎什么也不做的看法如下。我看不到任何错误。现在我正在使用目录目录,在我的导入/导出中是否有不同的属性?

谢谢。

+0

如果您找到了解决此问题的方法,请将其发布到此处。 – Mikhail 2011-08-08 20:25:18

回答

0

不,你需要使用的属性不应有任何区别。

很难说出有什么问题,下面是一篇关于MEF debugging的博客文章。