2

我正在实施 IIS 托管 WCF Web 服务以接受来自第三方的潜在客户。在保存信息之前/之后可能会发生很多操作。我正在考虑将其实现为基于插件的架构。

预保存操作的示例是

  • 保存前重复检查
  • 确保信息有效(不是米老鼠)

保存后操作是

  • 基于邮政编码的路由到正确的仓库
  • 领导任务。

我一直在阅读有关 MEF 的信息,但我无法确定这是否真的值得实施 MEF,因为每次调用加载和卸载插件可能会增加开销?有没有办法以某种魔法加载所有插件application_start

4

1 回答 1

0

我同意 Steven 的观点,您不需要为此使用插件架构。您可以使用设计合理的服务。在 Steven 的博客文章——编写高度可维护的 WCF 服务中,有一些非常好的提示。

尽管如此,要回答问题的第二部分,没有什么可以阻止您初始化 MEF 组合容器Application_Start并将其静态存储(除了它引入了全局状态,这通常是一个糟糕的设计决定)。然后它将在请求之间共享,您可以根据需要使用它来组合部件,而无需重复导出发现的开销。

于 2013-03-14T12:45:18.193 回答