asp.net 核心中的 MVC 架构模式

MVC architecture pattern in asp.net core

我开始学习asp.net核心 并在视图文件 中看到,您始终可以在视图中使用对象 @Model of ViewModel class, 我想知道这里使用的架构模式是 MVC 还是 MVVM?

并且,asp.net 核心是否因为 razor 页面和 viewModel 之间的绑定而坚持一种架构模式?

根据你的描述,我假设你想知道Asp.net Core Razor 页面的页面模型是MVC 架构模式还是MVVM 模式,对吧?我建议你可以查看 this article.

Razor Pages 页面模型 class 的主要目的是在 UI 层(.cshtml 视图文件)和页面处理逻辑之间提供清晰的分离。

视图模型是演示模型设计模式的一种实现。它是一个自包含的 class,表示特定“视图”或页面的数据和行为。视图模型模式在 MVC 应用程序开发中广泛使用,它主要表示数据,但通常很少有行为。在 Razor Pages 中,PageModel 也是视图模型。

Razor Pages 有时被描述为实现 MVVM(模型、视图 ViewModel)模式。它没有。 MVVM 模式适用于表示和模型共享同一层的应用程序。它在 WPF、移动应用程序开发和一些 JavaScript 库中很流行。 MVVM 的一个主要特性是视图会自动更新以反映对底层模型的更改。这个过程通常由双向绑定和观察者模式的实现来控制。在服务器端 Web 应用程序中,模型位于服务器上,而视图位于客户端上。您需要实现额外的复杂层才能在这种分布式架构中实现类似于观察者模式的任何东西。