0
我对ViewModel如何在KnockOut.js和Asp.Net MVC的上下文中工作感到困惑。在Asp.Net MVC的ViewModel vs Knockout.Js
在Asp.Net MVC中,ViewModels与DTO类似。他们习惯于拥有强类型的视图。这被认为是一种很好的做法,我也一直在研究。
但是,最近我对Knockout.js感兴趣,它以完全不同的方式使用ViewModels。我仍然不是100%确定的,但ViewModel看起来像控制器。
我想我仍然对knockout.js中的ViewModel感到困惑,因为它与Asp.Net MVC不一样。你能否帮助澄清这两种模式?
你是对的。 MVC中的逻辑是在控制器内部的,在这个上下文中的视图模型基本上是一个强类型的ViewBag或DTO,用于将数据传递给视图。在Knockout中,视图模型更像是一个典型的MVVM视图模型,更像是一个控制器,它暴露了数据绑定的可观察属性。 –
Angular之类的ASP.NET MVC实现了MVC模式,而KO实现了MVVM模式。 – Anders
@AnonyChu感谢您解决困惑。所以,无论何时使用MVVM模式,VM都类似于Controller?情况总是如此吗?就像在Windows应用程序开发等。 – harsimranb