我正在使用MVVM模型开发一个应用程序,但我已经到了需要选择使用哪个框架的地步。
可能的方案包括:
MVVM工具包 MVVM基金会 WPF应用框架(WAF) 光MVVM 这份原稿 有把握的事情 棱镜 ReactiveUI
根据你的经验,哪个更好?
我正在使用MVVM模型开发一个应用程序,但我已经到了需要选择使用哪个框架的地步。
可能的方案包括:
MVVM工具包 MVVM基金会 WPF应用框架(WAF) 光MVVM 这份原稿 有把握的事情 棱镜 ReactiveUI
根据你的经验,哪个更好?
当前回答
我试着描述一下Pete的回答中所缺少的框架:
MVVM Toolkit (Microsoft)是一个非常轻量级的库,其中包含Visual Studio项目模板,应该支持使用此模式的初学者。如果微软对他们的Toolkit得到了良好的反馈,那么他们可能会将其作为一个新的Visual Studio(可能是2010年)项目模板来实现。
Prism (Microsoft p&p)是一个框架,它提供了对MVVM模式的更多支持。这个项目的主要目标是帮助你构建模块化的WPF和/或Silverlight应用程序。如果你只是需要实现MVVM模式,或者你是。net / wpf的初学者,我不会推荐这个项目。 参见:链接。
WPF应用程序框架(WAF)是一个轻量级框架,可以帮助您使用MVVM创建WPF应用程序。它只针对WPF,所以不支持Silverlight。它与大多数其他MVVM框架不同,它引入了控制器。它们负责应用程序工作流,并在各种viewmodel之间进行协调。
其他回答
如果您正在寻找WPF/MVVM应用程序框架之上的可扩展性(编写插件的能力),那么您可能会对SoapBox Core免责声明感兴趣:它是我写的。它是开源的,所以即使你不使用它,也可能有一些好的想法适合你。它在可扩展性和IoC方面都使用了MEF。
还有nRoute
一个非常好的WPF/Silverlight应用框架,支持MVVM
混合你自己的!
我使用PRISM的EventAggregator, MVVM foundation的ViewModelBase等等。我还调整了RelayCommand(在某些地方调用的DelegateCommand)来接受其他数据,等等。
我不会只推荐一个框架本身。
我正在用Prism,而且很喜欢它。对我来说最重要的一件事是,如果我需要帮助,会有其他人和好的例子。一旦你有了基本的运行,你的应用程序就需要一大堆的扩展,当你与别人使用相同的框架时,这就容易得多了。
还可以看看:
卡利本和玛瑙!