我问这个问题,因为我一直负责创建一个框架,使我们可以有一个MVC的网站,当用户通过这种方式拉动其组件并加载它们记录在从数据库,负载“插件”中指出,以便使用。这些插件可以是出现在页面的一部分中的小小部件,也可以是应用程序的完整部分。(MEF)在启动时组合是否必须发生?
我选择了MEF,因为它看起来(和看起来仍然)是我锁的钥匙的完美,因为它是,但我不断收到上,当应用程序启动时发生的一切事实绊倒。我已经有一个与此问题有关的另一个问题(located here),但这是针对特定问题的。我的问题是,当用户登录时,那是在我需要完成所有组合时发生的,在我去数据库以获取用户为其帐户安装的所有插件(.dll文件)之后。
所以我的问题是这样的:因为这关系到MEF,不构成绝对必须在启动时发生,或者我可以拥有它,让所有我的作文在用户登录后会发生什么?这对这个项目至关重要。并且在询问之前,整个网站被认证锁定。未注册用户唯一会看到的是登录页面,仅此而已。因此,该网站可能有基于用户完全不同的外观(和可用的功能)已登录。
或者,我只是要求太多了,从技术上来说?
我想你打我的问题的头部。我一直在尝试在启动时完成我的所有MEF组合,但是当用户登录时需要将所有内容分开,然后我会执行所有MEF组合魔术,将组合容器存储在会话中,然后让我的应用程序做它做的。我认为这是关键。谢谢你的提示!我的头只是不正确的地方。 :) – 2012-02-29 16:01:05