diff --git "a/\344\274\215\345\255\246\345\206\233/20251229-MVC\345\274\200\345\217\221\347\216\257\345\242\203.md" "b/\344\274\215\345\255\246\345\206\233/20251229-MVC\345\274\200\345\217\221\347\216\257\345\242\203.md" new file mode 100644 index 0000000000000000000000000000000000000000..8b2b5b98684337819431afa4d428cbcfc4727a87 --- /dev/null +++ "b/\344\274\215\345\255\246\345\206\233/20251229-MVC\345\274\200\345\217\221\347\216\257\345\242\203.md" @@ -0,0 +1,40 @@ +## 笔记 + +### 搭建一个开发环境 + +``` +理解ASP.NET Core MVC的基本概念和架构 +成功搭建VSCode开发环境并创建第一个MVC项目 +了解MVC项目的基本结构,能够使用命令行和VSCode运行项目 + +首先安装必要的软件和依赖: +``` + +### 如何使用命令建立一个mvc文件 +``` + +使用命令行创建MVC项目 +3.1 为什么使用命令行? +更灵活:可以在任何目录创建项目 +更透明:了解项目创建的每一个步骤 +技能通用:命令行技能在其他开发中也会用到 +3.2 创建项目步骤 +步骤1:打开终端 + +Windows: 按Win+R,输入cmd或使用PowerShell +Mac/Linux: 打开Terminal +步骤2:创建项目目录并进入 + +mkdir StudentManagementSystem +cd StudentManagementSystem +步骤3:创建MVC项目 + +dotnet new mvc -n StudentManagementSystem +步骤4:用VSCode打开项目 + +code . +3.3 项目结构解析 +项目创建成功后,在VSCode中查看项目结构 + +``` + diff --git "a/\344\274\215\345\255\246\345\206\233/20251231-MVC\346\216\247\345\210\266\345\231\250.md" "b/\344\274\215\345\255\246\345\206\233/20251231-MVC\346\216\247\345\210\266\345\231\250.md" new file mode 100644 index 0000000000000000000000000000000000000000..bb95eb4ab0132b3431bf335ef5421ee2f7904200 --- /dev/null +++ "b/\344\274\215\345\255\246\345\206\233/20251231-MVC\346\216\247\345\210\266\345\231\250.md" @@ -0,0 +1,43 @@ +## 笔记 + +接收请求:捕获用户的 HTTP 请求(如 GET/POST、参数、Cookie 等) +分发逻辑:调用对应的 Model 层处理数据(查 / 增 / 删 / 改) +返回响应:将处理结果传递给 View 层渲染,或直接返回 JSON / 重定向 +### 控制器规范 +``` +控制器的命名规范 +名称必须以 Controller 结尾(如 StudentController) +通常放在 Controllers 文件夹中 +继承 Microsoft.AspNetCore.Mvc.Controller 类 +// 正确的命名 +public class StudentController : Controller + +// 错误的命名(不会自动识别为控制器) +public class StudentManager : Controller +1.3 控制器的生命周期 +HTTP请求 → 路由系统 → 找到对应控制器 → 创建控制器实例 → +调用动作方法 → 返回结果 → 销毁控制器实例 +``` +### 如何创建控制器 +``` + 什么是动作方法(Action Method)? +控制器中的公共方法(public method) +通常返回 IActionResult 或其派生类型 +每个动作方法对应一个用户可访问的URL +public class StudentController : Controller +{ + // 动作方法:显示学生列表 + public IActionResult Index() + { + return View(); // 返回视图 + } + + // 动作方法:显示学生详情 + public IActionResult Details(int id) + { + // 处理逻辑 + return View(); + } +} +``` + diff --git "a/\344\274\215\345\255\246\345\206\233/20260103-\346\216\247\345\210\266\345\231\250\347\232\204\350\267\257\347\224\261.md" "b/\344\274\215\345\255\246\345\206\233/20260103-\346\216\247\345\210\266\345\231\250\347\232\204\350\267\257\347\224\261.md" new file mode 100644 index 0000000000000000000000000000000000000000..db885ff07d565e7c912254d6325a44c0305bc129 --- /dev/null +++ "b/\344\274\215\345\255\246\345\206\233/20260103-\346\216\247\345\210\266\345\231\250\347\232\204\350\267\257\347\224\261.md" @@ -0,0 +1,17 @@ +## 笔记 + + MVC 中,路由是控制器的 “地址簿”: +前端发起请求(如 http://localhost:5000/users) +框架(如 Flask)根据路由规则,匹配到对应的控制器方法(如 list_users) +控制器方法处理逻辑后返回响应 +``` +如何弄一个路由(在 Program.cs 中配置): +app.MapControllerRoute( + name: "default", + pattern: "{controller=Home}/{action=Index}/{id?}"); + 路由器模版解释: + {controller}:控制器名(去掉Controller后缀) + {action}:动作方法名 + {id?}:可选参数,? 表示可选 + +``` \ No newline at end of file