asp.net core 中的 MVC 架构模式
Posted
技术标签:
【中文标题】asp.net core 中的 MVC 架构模式【英文标题】:MVC architecture pattern in asp.net core 【发布时间】:2021-11-23 13:10:08 【问题描述】:我开始学习asp.net core 并看到在视图文件 您始终可以在视图中使用 ViewModel 类的对象 @Model, 我想知道这里使用的架构模式是 MVC 还是 MVVM?
而且,asp.net 核心是否因为 razor 页面和 viewModel 之间的绑定而坚持一种架构模式?
【问题讨论】:
我不确定我是否真的理解这个问题,但我认为这可能有助于解决一些困惑:***.com/questions/48121928/… 请编辑问题以将其限制为具有足够详细信息的特定问题,以确定适当的答案。 【参考方案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 应用程序中,模型位于服务器上,视图位于客户端。在这种分布式架构中,您需要实现额外的复杂层才能实现观察者模式之类的任何东西。
【讨论】:
以上是关于asp.net core 中的 MVC 架构模式的主要内容,如果未能解决你的问题,请参考以下文章