我正在使用WPF, EF, WCF, SQL
设计客户端/服务器N层应用程序。我想使用托管扩展性框架(MEF
)来更好地管理将包含在我的应用程序中的“功能”。
我将“功能”定义为端到端功能(即UI到数据库),其中包括:
见图表。特征A和B端到端表示。
在我的研究中,我有一些关于WPF和WCF MEF实现的一些很好的例子:
WPF:http://goldytech.wordpress.com/2010/02/17/plug-ins-modules-development-with-mef-part-i/
WCF:http://www.fidelitydesign.net/?p=390#comments
但不是两者都在同一个应用程序中。
换句话说,我希望能够删除客户端上的UI.FeatureC
/ Entities.FeatureC
以及服务器上的DataAccess.FeatureC
和Entities.FeatureC
并自动启用应用程序发现新功能。
这似乎可行的MEF部件定义了每个层中存在的“功能”,对吧?或者有更好的方法来构建它吗?
另外,我有点担心数据库以及它如何支持动态组合的应用程序。我想唯一的选择是确保数据库具有适当的表,存储过程等,并紧紧抓住。
是否有人尝试在应用程序范围内实施MEF?有什么好的参考或建议吗?
谢谢!