关于 razor,.NET MVC 对 razor 的支持与 .NET razor 页面有什么区别,是否有所谓的 .NET MVC razor 页面?

With regards to razor, what is difference between .NET MVC support for razor vs .NET razor pages and is there anything called .NET MVC razor pages?

.NET 目前有 5 种方法来构建通过访问服务器生成内容的网站:

问题 1: 我想了解 - 关于 razor 的概念,.NET MVC 对 razor 页面的支持与 .NET razor 页面有什么区别?我将尝试在下面给出我的理解:

这是正确的吗?

问题 2: 我听同事说 .NET MVC razor pages。我很困惑,因为我从来没有遇到过这样的事情。我的理解是 .NET MVC 与 .NET Razor 页面不同。有什么叫 .NET MVC razor pages 的东西吗?

问题三:本文(https://docs.microsoft.com/en-us/dotnet/architecture/modern-web-apps-azure/modern-web-applications-characteristics#traditional-and-spa-behaviors-supported)提到:

ASP.NET Core supports both MVC (Views or Page based)

当名称 (MVC) 本身说它是基于视图的时候,MVC 怎么能是基于页面的呢?有人可以给我澄清一下吗?

Razor 是一种模板语法。它使 C# 能够嵌入到 HTML 中,以便您可以使用 C# 在 运行 时动态生成 HTML 的一部分。

MVC 是一种服务器端开发框架,它鼓励您使用模型-视图-控制器架构来构建您的 Web 应用程序。它使用 Razor 作为其默认的视图引擎。

Razor Pages 是另一种服务器端开发框架,它依赖于以页面为中心的 Web 应用程序开发方法。它使用 Razor 作为模板语法。

MVVM 是一种设计模式,用于客户端上 运行 的应用程序 - 例如,WPF、Xamarin 和一些基于 Javascript 的 SPA 框架。我看到它用来描述 Razor Pages,但我不同意,并且觉得调用 Razor Pages MVVM 只会引起混淆。

ASP.NET Core MVC 鼓励采用“前端控制器”方法,因为单个控制器可以负责处理多个路由,它们的唯一联系是它们与同一个实体相关。 Razor Pages 也可以看作是使用页面控制器方法的 MVC 实现。 PageModel class 类似于页面的控制器。