ASP.NET MVC

ASP.NET MVC与.NET Framework关系

.NET Framework是一个庞大的代码库,能为多种编程语言提供支持(如C#、VB、F#等)。同时.NET Framework 提供了多种技术框架,ASP.NET MVC是.NET Framework提供的众多技术框架中的一种,用于开发Web应用。

.NET Framework平台提供的技术框架如下:

  • Web应用:ASP.NET MVC、Web Form、ASP.NET网页。
  • 桌面应用:Win Form、WPF

补充:Web应用的三个框架并不相互排斥,同一个应用程序的组件可以使用不同框架开发,即多种框架开发同一个应用程序。

MVC架构

在"模型-视图-控制器(MVC)"模式中视图是嵌入了Razor标记的HTML文件,以.cshtml为后缀。视图文件存放在Views目录下,Views文件夹与Controller文件夹处于同一层级,并且Views文件夹下的文件与Controllers文件内的文件有很强的对应关系。

  • Controllers下的.cs文件忽略后缀,与Views文件夹下的目录保持同名。如下图所示:
  • .cs文件中的方法名与Views文件夹下对应目录中的.cshtml文件同名。
cs 复制代码
public class GoodsController : Controller
{
    public ActionResult ShowGoodsIndex(string GoodsId)
    {
        return View();
    }
}

ASP.NET MVC框架使用了约定大于配置的思想,按照框架约定的结构组织文件,浏览器请求某个Controller方法时,该方法默认返回与方法同名的.cshtml文件,浏览器接收.cshtml并渲染页面。

Views文件夹下的其他文件

1、Views/Shared/_Layout.cshtml

_Layout.cshtml是MVC框架默认的布局文件,在创建项目的时候会自动生成一个模板,该模板的布局效果如下:

想在某页面上应用该布局,找到对应的.cshtml文件,在文件最上方添加以下Razor标记:

html 复制代码
@{
    Layout = "_Layout";
}

默认情况下布局文件都含有 @RenderBody() 方法,该方法所在的位置就是布局中展示视图的位置,默认在Content标签块中。

2、Views/_ViewStart.cshtml

_ViewStart.cshtml是一个全局的布局文件,程序中每个.cshtml页面都会默认使用_ViewStart提供的布局。在_ViewStart.cshtml文件中引入其他布局,可以实现布局管理。以下代码表示项目中所有页面都使用_Layout布局,若有其他布局文件可以在此切换。

补充微软官方文档:Views in ASP.NET Core MVC | Microsoft Learn

相关推荐
周杰伦fans1 天前
.net core webapi/mvc阿里云服务器部署 - 错误解决
阿里云·mvc·.netcore
BFT白芙堂1 天前
GRASP 实验室研究 论文解读 | 机器人交互:基于神经网络引导变分推理的快速失配估计
人工智能·神经网络·机器学习·mvc·人机交互·科研教育机器人·具身智能平台
是萝卜干呀2 天前
IIS 部署 asp.net core 项目时,出现500.19、500.31问题的解决方案
后端·iis·asp.net·hosting bundle
William_cl2 天前
MVC 中 AJAX 与前后端交互深度实战(含独家避坑与场景化方案)
ajax·mvc·交互
Cyan_RA93 天前
SpringMVC 执行流程分析 详解(图解SpringMVC执行流程)
java·人工智能·后端·spring·mvc·ssm·springmvc
hello 早上好3 天前
Spring MVC 类型转换与参数绑定:从架构到实战
spring·架构·mvc
sanggou3 天前
License 集成 Spring Gateway:解决 WebFlux 非阻塞与 Spring MVC Servlet 阻塞兼容问题
spring·gateway·mvc
optimistic_chen4 天前
【Java EE进阶 --- SpringBoot】Spring DI详解
spring boot·笔记·后端·spring·java-ee·mvc·di
速易达网络4 天前
ASP.NET MVC 连接 MySQL 数据库查询示例
数据库·asp.net·mvc
智商偏低4 天前
ASP.NET Core 身份验证概述
后端·asp.net