我必须在 Silverlight2 中构建小型(目前)管理应用程序,并且想使用一些模式将 UI 与我的 BL/DAL 绑定。
我发现了 view-model-viewmodel 和 mvp/mvc 模式,其中第一个(V/M/VM)特别适合 WPF 应用程序,因为它使用 WPF 数据绑定选项的丰富功能。你有什么建议?你能为 SL2 写一个简单的 V/M/VM 例子吗?
6 回答
Nikhil Kothari 在 Silverlight 中的 MV-VM 上有一组很棒的示例(带有代码),以及一个使用一些非常好的额外功能构建的框架。您绝对应该检查一下。 Silverlight 中的 MV-VM
Microsoft 的 Patterns & Practices 小组针对WPF 和 Silverlight应用程序提供了一些指导。
您可能想查看用于 Silverlight 的 CSLA.NET。我听说过关于它的好消息,但还没有亲自尝试过。
Silverlight 的 CSLA .NET 是针对 Silverlight 平台的 CSLA .NET 的子集。Silverlight 的 CSLA .NET 提供了 Silverlight 上 CSLA .NET 的几乎所有优势,包括数据绑定、验证、业务规则、授权、n 级撤消和持久性。
结果是用于 Silverlight 的 CSLA .NET 支持创建在 Silverlight 客户端上运行的丰富的面向对象的业务层,该业务层可以透明地与运行在 Web 和应用程序服务器上的 CSLA .NET 对象进行通信。
Silverlight 还具有非常强大的数据绑定功能,因此没有问题。
Silverlight 中对模型-视图-视图模型模式影响更大的缺失部分是它没有实现像 WPF 这样的命令。这是 Josh Smith 的一篇文章,它再现了 Silverlight 中 WPF 的命令模式。
Wildermuth.com 的 Shawn Wildermuth 写了一篇关于 MV-VM 模式的文章,查看一下,这里是文章“Model-View-ViewModel In Silverlight 2 Apps”的链接