首先我必须说明我对WPF和MVVM都很陌生。 我想开发一个客户端-服务器应用程序(客户端向服务器发送信息,服务器通知其中一位或多位客户端...可以考虑像Yahoo Messenger这样的东西(某个用户更改状态..发送信息到服务器,服务器通知他的朋友并更改他们的UI)) 我的问题是:MVVM适合这种应用程序吗?
是的,您可以应用MVVM来构建应用程序的客户端。
模型层将包括Web服务接口(WCF是最常用的方法)到远程方法。 视图模型部分将准备从模型中获取的数据以便由UI显示,并发送通知。
主要问题是通知所有客户端某些更改发生了。 最好的方法是在客户端和服务器之间使用持久连接,以便服务器可以向客户端“推送”通知,这可能并不总是可行的解决方案。 另一种解决方案,更重但更标准,是使用轮询: 您的客户端将定期(例如每5秒)询问服务器是否可用一些通知,如果是,则更新其界面。