首页 新闻 赞助 找找看

Silverlight和MEF的问题

0
[待解决问题]

我刚开始接触利用MEF来实现Silverlight的插件式开发。我把所有的插件都做成了dll文件,放在服务器的文件夹里。网上的示例基本上都是利用WebClient的方式动态加载下载,但都只加载一次,我想知道,如何利用WebClient下载多个dll插件,谢谢!

潘杰的主页 潘杰 | 菜鸟二级 | 园豆:204
提问于:2013-01-03 16:38
< >
分享
所有回答(1)
0

还是自己解决吧

就是用AggregateCatalog类把各个AssemblyCatalog对象装载起来

AssemblyPart part = new AssemblyPart(); 

Assembly ass = part.Load(e.Result);  //加载dll到一个程序集中
AssemblyCatalog cata = new AssemblyCatalog(ass);//取得程序集中的目录
catalog.Catalogs.Add(cata);加载到AggregateCatalog对象

其他的dll也一样处理,

最后 container = new CompositionContainer(catalog);
            container.ComposeParts(this);

一直不明白为什么要用到this,后来明白,这就是加载包含了[Import]特性的属性,不知道是否应该这样理解

潘杰 | 园豆:204 (菜鸟二级) | 2013-01-03 22:29
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册