c# – MEF.如何清理默认容器?
我正在尝试在Silverlight客户端中实现Logout操作.
在登录操作期间,MEF使用[Export] -ed单例类的实例初始化DefaultContainer,其中包含用户特定信息(如密码). 有没有办法,重新初始化/重置/删除MEF基础设施/ DefaultContainer,就像它从未初始化? 用户成功执行Logout操作后,我想再次导航到Login页面… 解决方法
无法重新初始化CompositionHost容器.一旦初始化或默认创建它就无法更改.
但是,您可以创建AggregateCatalog并使用TypeCatalog,将singleton作为唯一类型,并在不再需要时从聚合中删除它. 这并没有改变以下事实:一旦MEF创建了“部分”,它就可以满足任何其他需要它的[导入]. 从MSDN开始:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |