gpt4 book ai didi

asp.net-mvc - 我们在 MVC(Web)和 MVVM(桌面)框架中对 ViewModel 有不同的含义吗?

转载 作者:行者123 更新时间:2023-12-03 10:17:36 28 4
gpt4 key购买 nike

MVC 框架:我对 MVC 中的 ViewModel 的理解是单个模型中不同模型的集合并传入 View ,因为我们可以将一个模型传递给 View 。

MVVM 框架 :在 MVVM 框架中,ViewModel 将具有表示逻辑以及模型对象,但这不是模型对象的组合
基本上 ViewModel 用于事件和通知。

请给出你的想法。

最佳答案

你的观察是正确的。

ViewModel 在 MVC 中是被动的,而在 MVVM 中是主动的。
在 MVC 中,默认情况下我们称之为 ViewModel 的东西可能简称为 Model。

相似之处:

  • MVC 和 MVVM 中的 ViewModel 向 View 提供数据,以便 View 可以很好地向用户显示
  • ViewModel 可以聚合子 ViewModel,但最终有一个实例通过属性提供给 View (在 MVC 中称为 Model,在 MVVM 中称为 DataContext)

  • 差异:
  • MVVM 中的 ViewModel 通过 ICommand 实现为用户提供可以根据其他属性的值动态启用/禁用的操作,这些属性通常实现 INotifyPropertyChanged
  • 数据绑定(bind)存在于两个世界中,但在 MVC 中它只是“OneTime”,而在 MVVM 中它可以是“OneTime”、“OneWay”、“TwoWay”甚至“OneWayToSource”
  • 关于asp.net-mvc - 我们在 MVC(Web)和 MVVM(桌面)框架中对 ViewModel 有不同的含义吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32331620/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com