2010-04-07 47 views
1

我正在研究一个包含很多模块(CRM,库存,管理等)的大型Web应用程序。我想要完成的是能够独立开发每个模块(UI,Core Logic,DataAccess Logic ,以及全部),然后将它们全部集成到一个核心模块中(这种集成应该只是对配置文件的更改)。举例来说,如果我有一个名为主机上的核心模块,我应该能够通过简单地添加此行到主机的配置文件的CRM模块添加到主机模块:

<模块名称=“CRM”/> WCSF vs MEF,最适合我的是?

我在WCSF上做了一些阅读,发现它可以帮助将一些模块集成在一起,但它在集成这些UI元素方面并没有提供太多的帮助。
一些朋友建议MEF参加这项工作,但我还没有看过。
你们认为什么?
是否有可能实现这种级别的模块化,以及为了使其工作而必须投入多少工作?

+0

我建议你有你的配置条目要更具体一些,比如'' – Jaxidian 2010-04-07 11:32:28

+0

你有没有想过然而? – Meligy 2010-07-22 10:32:34

回答

1

这就是MEF所做的事情,因为它已经成为.NET 4中BCL的一部分,所以我会定义这样做(注意,它也适用于.NET 3.5 SP1的开源格式)。

但是,不要指望有任何工具可以让你神奇地开发松散耦合的代码。它首先是一个设计学科。您也可以使用通用的依赖注入和插件模式编写模块化应用程序,只需使用BCL(尽管DI容器会很有帮助)。

1

当我读到这个问题我想:我会与MEF去避免SCSF的原因有很多

  • MEF是落实重量很轻,尤其是VS WCSF
  • WCSF有这么多的要求,上手
  • WCSF增加了不必要的复杂性,以典型的操作
  • MEF有许多选项已经用于拾取模块
  • 格伦块岩石(MEF的父亲)!
  • 格伦总是在同一时间让MEF更好,更“容易”和“更强大”。
  • MONO人还试图用MEF玩
  • WCSF为WF 1(不WF 4,它不是关于如何最近,但在WF 1个多问题)

然而,这一切并不计数。 WCSF和MEF是不同的。这个论点对我来说听起来不正常。

对于你以后的情况,例如WCSF就是为此而准备的。例如,如果MEF更好,则MEF用于每个模块内部的功能。

你是否进入MVC?你有没有考虑MVC 2.0(RTM现在)的地区功能?

编辑: 看到这个5部分组成的系列: http://blogs.msdn.com/simonince/archive/2008/06/19/wcsf-application-architecture-5-defining-modules.aspx

EDIT2 此链接使得一个IoC之间讨论的一个非常好的协议(这似乎是你怎么看MEF)和WCSF : http://theniceweb.com/?cat=45

+0

啊,MVC。不,该项目必须是一个webforms项目,因为我们在第三方控制中投入了大量资金。您似乎喜欢MEF,但仍然认为WCSF在我的情况下更好,您是否会提供指向文章或使用WCSF处理集成模块(包括UI,这非常重要)的链接? – Galilyou 2010-04-07 12:04:01