Wpf ViewModel-我的业务逻辑层?

Wpf ViewModel-我的业务逻辑层?,wpf,mvvm,viewmodel,business-logic,Wpf,Mvvm,Viewmodel,Business Logic,在我的工作中,我被分配到一个使用MVVM模式实现的WPF项目。它有零代码隐藏的视图,这很酷。它使用实体框架生成的数据模型作为模型(与其他一些类一起),我怀疑这是一种合适的方法。但最让我头疼的是,它的ViewModel是最厚的一层,所有业务逻辑和应用程序/操作代码都位于其中 现在,我是WPF/MVVM的新手,但我对MVVM模式的理解是,ViewModel只应该提供视图的方法,以便它可以使用模型,这使得它成为最薄的一层,我的业务逻辑和应用程序/操作代码应该驻留在其他地方 如果有人能帮我,我将不胜感激

在我的工作中,我被分配到一个使用MVVM模式实现的WPF项目。它有零代码隐藏的视图,这很酷。它使用实体框架生成的数据模型作为模型(与其他一些类一起),我怀疑这是一种合适的方法。但最让我头疼的是,它的ViewModel是最厚的一层,所有业务逻辑和应用程序/操作代码都位于其中

现在,我是WPF/MVVM的新手,但我对MVVM模式的理解是,ViewModel只应该提供视图的方法,以便它可以使用模型,这使得它成为最薄的一层,我的业务逻辑和应用程序/操作代码应该驻留在其他地方


如果有人能帮我,我将不胜感激。关于ViewModel的用途,我是对还是错?我应该把我的业务逻辑和应用程序/操作代码放在别的地方,还是把View模型看作是我的业务逻辑层?< /P> < P>是的,我同意在视图模型中没有业务逻辑,除非它是非常简单的数学计算。我工作的公司喜欢在模型中保留所有业务逻辑。我个人认为在你的项目中应该有一个服务层来处理所有这些逻辑。但是,视图模型应该专注于视图,获取和发送输入,最好通过INotifyPropertyChanged接口更新值/属性。我喜欢把视图模型想象成学校里指挥交通的“交叉警卫”:P
-希望这有帮助

谢谢你的意见+1为简洁的澄清。我喜欢“交叉防护”的东西:)+1对于服务层,我对业务逻辑也做同样的事情。