wpf中的MVVM,如何从服务引用中将ObservebleObject添加到模型中

时间:2012-01-10 12:26:57

标签: c# wpf mvvm

我有一个连接到wcf服务引用的WPF客户端应用程序。

我的模型仅来自服务参考。

我想为每个模型创建一个viewmodel,如何在不将每个属性从模型手动添加到viewmodel的情况下添加NotifyPropertyChangedEvent

我在mvvm中看到,模型可以从ObservebleObject中删除,唯一的问题是模型是在其他地方创建的,我只是在获取引用。

有什么想法吗?

谢谢

2 个答案:

答案 0 :(得分:1)

每次你在服务上调用一个方法时,它都会返回一个新的DTO。它永远不会给你相同的实例,你不能使用服务来操作一个对象实例 - 通信中使用的所有数据都是暂时的。

因此,这些实例永远不会更新(它们不是模型),因此实施INotifyPropertyChanged将毫无意义。相反,您需要编写视图模型并将DTO复制到其中。视图模型是您实现INotifyPropertyChanged的地方。

答案 1 :(得分:0)

我认为必须将INotifyPropertyChanged的实施放在Model中。您只需在ViewModel

中实现它即可

为什么您的View需要告诉Model(通过ViewModel)某些内容已被更改?我认为它应该只告诉ViewModel存在变化。然后让View ModelModel一起玩。