wpf - 用于 WPF 和 .NET CF 3.5 开发的 MVP 或 MVVM 框架

标签 wpf model-view-controller windows-mobile prism mvp

我正在为断开连接的客户端-服务器平台创建架构大纲草案,其中涉及多种不同的客户端类型。我需要支持:Web 客户端、桌面工作站和移动设备(现在是 WM 6.x,以后是 Android)。

我正在寻找一个基于 MVP 或 MVVM 的框架,它可以让我在客户端之间重用尽可能多的代码和架构,同时:

  • 使用 WPF 进行桌面开发
  • 使用 .NET CF 3.5 进行 Windows Mobile 开发

这个框架显然不需要支持Android,但是我正在考虑Mono for Android开发Android客户端(为了更容易维护整个平台),因此可移植性将是一个额外的 Assets 。

到目前为止我排除了:

  • Prism(不支持基于 WM 的移动设备 - 仅 Windows Phone 7)
  • MVC# (不支持WPF)

如果有任何有助于进一步研究该主题的提示,我将不胜感激。

最佳答案

这些 MVVM 框架适用于 Windows Phone 7:

  1. Caliburn Micro
  2. MVVM Light (它没有宣传它,但我看过它在 WP7 上使用的演示)
  3. ReactiveUI (使用 .NET 响应式(Reactive)扩展)

我个人最喜欢的是 ReactiveUI,但如果您从未使用过 Reactive Extensions,那么一开始它可能会很费脑力。

至于 UI 组合(你提到了 Prism),没有太多选择,主要是由于手机上的反射限制。我看过一篇文章,其中有人在电话上使用了基本的 MEF,而 MEF 可能是大多数人在这种情况下所需要的。你可以看看那篇文章here .

希望这有帮助。

关于wpf - 用于 WPF 和 .NET CF 3.5 开发的 MVP 或 MVVM 框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5535861/

相关文章:

c++ - boost 智能指针和 BOOST_NO_MEMBER_TEMPLATES

wpf - 如何拉伸(stretch) HeaderedContentControl 的内容?

wpf - 组合框和IDataErrorInfo

WPF WriteableBitmap 透明度问题

c# - 隐藏 Windows Mobile 应用程序而不是关闭

c# - 在 PivotItem 导航 WP7 期间调用了哪个方法/函数

mysql - 如何使用 mysql 即可编辑数据网格在 wpf 数据网格本身中插入更新删除

ruby-on-rails - 如何在MVC下创建简洁,RESTful向导?

ios - Objective-C : Turning off music after switching views

ruby-on-rails - Rails 3 如何使用 link_to 更改数据库中 bool 值的值?