首页 .Net ASP.NET Core MVC

ASP.NET Core MVC


什么是MVC编程模式?
首先MVC全名是Model(模型)-View(试图)-Controller(控制器),是一种软件设计典范。用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面。各部分相互独立并且相互联系,可以让各自专注于自己的业务。

下图显示 3 个主要组件及其相互引用关系:


什么是ASP.NET Core MVC?
ASP.NET MVC 在服务器上呈现 UI,并使用模型-视图-控制器 (MVC) 结构模式。 MVC 模式将应用分成三组主要组件:模型、视图和控制器。 用户请求被路由到控制器。 控制器负责使用模型来执行用户操作或检索查询结果。 控制器选择要显示给用户的视图,并为其提供所需的任何模型数据。 对 Razor Pages 的支持是建立在 ASP.NET Core MVC 基础之上的。

Areas(区域)的作用?
区域提供将大型 ASP.NET Core MVC Web 应用分区为较小功能分组的方法。 区域是应用程序内的一个 MVC 结构。 在 MVC 项目中,模型、控制器和视图等逻辑组件保存在不同的文件夹中,MVC 使用命名约定来创建这些组件之间的关系。 对于大型应用,将应用分区为独立的高级功能区域可能更有利。 例如,具有多个业务单位(如结账、计费和搜索等)的电子商务应用。每个单元都有自己的逻辑组件视图、控制器和模型。

使用视图的好处?
视图可帮助在 MVC 应用内建立关注点分离,方法是分隔用户界面标记与应用的其他部分。 采用 SoC 设计可使应用模块化,从而提供以下几个好处:
应用组织地更好,因此更易于维护。 视图一般按应用功能进行分组。 这使得在处理功能时更容易找到相关的视图。
应用的若干部分是松散耦合的。 可以生成和更新独立于业务逻辑和数据访问组件的应用视图。 可以修改应用的视图,而不必更新应用的其他部分。
因为视图是独立的单元,所以更容易测试应用的用户界面部分。
由于应用组织得更好,因此你不太可能会意外重复用户界面的各个部分。

数据传递给视图的几种方式?
强类型数据:viewmodel
弱类型数据
ViewData(ViewDataAttribute)
ViewBag

何时使用分部视图
_Layout.cshtml
1将大型标记文件分解为更小的组件。
2将重复的页面内容拆分为通用组件,减少页面代码的冗余。

ASP.NET Core状态管理有哪几种?
详细阅读:https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/app-state?view=aspnetcore-6.0
HTTP 是无状态的协议。 默认情况下,HTTP 请求是不保留用户值的独立消息。 下面介绍了几种保留请求间用户数据的方法(状态管理方式)。
可以使用几种方法存储状态。 本主题稍后将对每个方法进行介绍。

存储方法

存储机制

Cookie

HTTP cookie。 可能包括使用服务器端应用代码存储的数据。

Session State

HTTP cookie 和服务器端应用代码

TempData

HTTP cookie 或会话状态

Query Strings

HTTP 查询字符串

Hidden Fields

HTTP 窗体字段

HttpContext.Items

服务器端应用代码

Cache

服务器端应用代码


特别声明:本站部分内容收集于互联网是出于更直观传递信息的目的。该内容版权归原作者所有,并不代表本站赞同其观点和对其真实性负责。如该内容涉及任何第三方合法权利,请及时与824310991@qq.com联系,我们会及时反馈并处理完毕。