Networking 通过网络从MVC到MVVM:体系结构评估/最佳实践

Networking 通过网络从MVC到MVVM:体系结构评估/最佳实践,networking,model-view-controller,mvvm,architecture,Networking,Model View Controller,Mvvm,Architecture,我有一个基于MVC的网络应用程序,它看起来类似于此UML结构: 当前,ControllerContainer捕获从网络控制器引发的事件,并根据更改操作ModelContainer。视图将在发生某些更改时(通过处理控制器事件)访问ModelContainer,并显示更改的数据 将视图站点更改为WPF技术带来了如何将此结构重构为相应的MVVM模式的问题。我扩展视图的第一种方法类似于此UML图: 如图所示,ViewModels将由当前模型的几个子集组成。ASFAIK视图-视图模型绑定可以很好地处理

我有一个基于MVC的网络应用程序,它看起来类似于此UML结构:

当前,ControllerContainer捕获从网络控制器引发的事件,并根据更改操作ModelContainer。视图将在发生某些更改时(通过处理控制器事件)访问ModelContainer,并显示更改的数据

将视图站点更改为WPF技术带来了如何将此结构重构为相应的MVVM模式的问题。我扩展视图的第一种方法类似于此UML图:


如图所示,ViewModels将由当前模型的几个子集组成。ASFAIK视图-视图模型绑定可以很好地处理用户交互,但是关于如何为视图模型提供网络输入(我已经在ControllerContainer中处理过)有什么好的实践吗

部分回答我自己的问题:
在我们当前的解决方案中,ViewModels将初始化并简单地使用控制器(或由控件实现的功能接口)。因此,当前的MVC结构将保持原样,控制层表示应用程序的功能API,ViewModel层位于控制层之上


如果有更优雅的解决方案来合并这些模式,请随意评论/发布答案。

部分回答我自己的问题:
在我们当前的解决方案中,ViewModels将初始化并简单地使用控制器(或由控件实现的功能接口)。因此,当前的MVC结构将保持原样,控制层表示应用程序的功能API,ViewModel层位于控制层之上

如果有任何更优雅的解决方案来合并这些模式,请随意评论/发布答案