【问题标题】:MVC architecture pattern in asp.net coreasp.net core 中的 MVC 架构模式
【发布时间】:2021-11-23 13:10:08
【问题描述】:

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

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

【问题讨论】:

  • 我不确定我是否真的理解这个问题,但我认为这可能有助于解决一些困惑:stackoverflow.com/questions/48121928/…
  • 请编辑问题以将其限制为具有足够详细信息的特定问题,以确定适当的答案。

标签: c# asp.net asp.net-mvc asp.net-core asp.net-web-api


【解决方案1】:

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

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

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

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

【讨论】:

    猜你喜欢
    • 2013-09-01
    • 1970-01-01
    • 2020-09-26
    • 1970-01-01
    • 2013-12-27
    • 2011-06-28
    • 2014-11-22
    • 2021-05-18
    • 1970-01-01
    相关资源
    最近更新 更多