diff --git "a/\345\274\240\346\200\241\347\220\264/20241112-MVC\347\254\224\350\256\260\345\217\212\347\273\203\344\271\240.md" "b/\345\274\240\346\200\241\347\220\264/20241112-MVC\347\254\224\350\256\260\345\217\212\347\273\203\344\271\240.md" new file mode 100644 index 0000000000000000000000000000000000000000..bcc89deddc65c4ed4bf5fe80c69ed416fc564587 --- /dev/null +++ "b/\345\274\240\346\200\241\347\220\264/20241112-MVC\347\254\224\350\256\260\345\217\212\347\273\203\344\271\240.md" @@ -0,0 +1,10 @@ +# 笔记 +- 1、dotnet new mvc -o 名 cd 名 Views->Home->项目名.cshtml Controllers引用项目方法名 +- 2、wwwroot->css->建项目名.css->写样式 +- 3、.cshtml里用link引用样式 href="~/css/项目名.css" +- 4、dotnet run --project 名 +- 5、ctrl+c 结束任务 + +# 作业 + +![20241117095343](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241117095343.png) \ No newline at end of file diff --git "a/\345\274\240\346\200\241\347\220\264/20241119-\346\216\247\345\210\266\345\231\250\345\217\212\347\273\203\344\271\240.md" "b/\345\274\240\346\200\241\347\220\264/20241119-\346\216\247\345\210\266\345\231\250\345\217\212\347\273\203\344\271\240.md" new file mode 100644 index 0000000000000000000000000000000000000000..154fcafc49238bfd4507e70810bf4f1ddf608564 --- /dev/null +++ "b/\345\274\240\346\200\241\347\220\264/20241119-\346\216\247\345\210\266\345\231\250\345\217\212\347\273\203\344\271\240.md" @@ -0,0 +1,172 @@ +# 控制器 +## 名字:控制器名+Controller.cs 文件内的基本组成: +``` +using Microsoft.AspNetCore.Mvc +namespace MVC项目名.Controlers; +public class 类名 : Controller +{ + public 返回值 方法名(参数){ + return 值; + } +} +``` + +# 作业 +## Linux练习 +### 任务:尝试使用以下几种方式分别登录服务器,说明它们分别的注意事项,并说明它们之间的区别 +ssh客户端 +![20241124212441](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124212441.png) + +tabby应用 +配置和连接 新建SSH连接 + +xShell +点击“新建”,新建会话 + 1.填写一个便于标识的名称 + 2.填写服务器的公网IP + 3.点击用户身份验证 填写服务器的用户名和密码,之后点击“确定” 填写服务器的用户名和密码,之后点击“确定” + +putty +配置连接:用户需要输入需要连接的主机或IP地址、端口号等信息,并点击“save”按钮 选中之前保持好的配置,点击“open”打开。 + +### 更新软件源,命令:apt update,并了解这一步的实际用处和意义 +![20241124212527](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124212527.png) + +### 更新软件和补丁,命令:apt upgrade -y,并了解这一步的实际用处意义 +![20241124212909](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124212909.png) + +## 熟悉并完成以下练习 +``` + 1.查看当前目录下的文件和文件夹 + 命令:ls + ![20241124213918](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124213918.png) + 2.查看当前路径 + 命令:pwd + ![20241124213951](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124213951.png) + + 3.创建一个新的文件夹 + 命令:mkdir [文件夹名] + ![20241124214034](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124214034.png) + + 4.删除一个文件夹 + 命令:rmdir [文件夹名](注意:只能删除空文件夹) + ![20241124214420](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124214420.png) + + 5.移动或重命名文件/文件夹 + 命令:mv [原路径] [新路径] + ![20241124214514](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124214514.png) + + 6.复制文件 + 命令:cp [源文件] [目标路径] + ![20241124214600](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124214600.png) + + 7.删除文件 + 命令:rm [文件名] + ![20241124214649](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124214649.png) + + 8.查看文件内容 + 命令:cat [文件名] + ![20241124214700](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124214700.png) + + 9.分页查看文件内容 + 命令:less [文件名] + ![20241124214724](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124214724.png) + + 10.查找文件 + 命令:find / -name [文件名] + ![20241124214918](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124214918.png) + + 11.查看文件权限 + 命令:ls -l [文件或目录名] + ![20241124215002](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124215002.png) + + 12.改变文件权限 + 命令:chmod [权限] [文件或目录名] + + + 13.改变文件所有者 + 命令:chown [新所有者] [文件或目录名] + + 14.查看当前登录用户 + 命令:whoami + ![20241124220612](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220612.png) + 15.查看系统运行时间和平均负载 + 命令:uptime + ![20241124220636](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220636.png) + 16.查看磁盘使用情况 + 命令:df -h + ![20241124220650](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220650.png) + 17.查看当前路径下的隐藏文件 + 命令:ls -a + ![20241124220702](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220702.png) + 18.创建一个空文件 + 命令:touch [文件名] + ![20241124220723](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220723.png) + 19.查看当前系统的内核版本 + 命令:uname -r + ![20241124220741](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220741.png) + 20.查看网络连接状态 + 命令:ifconfig 或 ip addr + ![20241124220803](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220803.png) + 21.安装一个软件包 + 命令:sudo apt-get install [软件包名] + ![20241124220832](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220832.png) + 22.卸载一个软件包 + 命令:sudo apt-get remove [软件包名] + ![20241124220906](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220906.png) + 23.更新软件包列表 + 命令:sudo apt-get update + ![20241124220928](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220928.png) +``` + + +## 在服务器上安装SDK环境 +![20241124213627](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124213627.png) + +## 使用nginx部署10个静态网站,要求不同域名,不同内容 +1 +![20241124234206](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124234206.png) +2 +![20241124235035](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124235035.png) +3 +![20241125234426](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241125234426.png) +4 +![20241125234906](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241125234906.png) +5 +![20241126000913](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241126000913.png) +6 +![20241126001456](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241126001456.png) +7 +![20241126001844](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241126001844.png) +8 +![20241126002111](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241126002111.png) +9 +![20241126002341](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241126002341.png) +10 +![20241126002554](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241126002554.png) + +## mvc练习 +### 1 创建一个控制台项目,没有任何选项,体会项目名称和什么有关系 +![20241124201553](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124201553.png) +### 2 创建一个控制项目,项目名称Blog +![20241124201711](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124201711.png) +### 3 创建一个控制台项目,输出到Blog目录 +![20241124201751](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124201751.png) +### 4 创建一个MVC项目,指定项目名称 +![20241124203122](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124203122.png) +### 5 创建一个MVC项目,指定输出目录 +![20241124210611](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124210611.png) +### 6 创建一个带解决方案,其下有一个MVC项目,3个类库项目的“综合项目” +![20241124210630](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124210630.png) +### 7 创建一个项目,在默认控制器(Home)下,新增一个Action方法,名为Ok,同时为其创建对应视图以显示这个视图 +![20241124210650](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124210650.png) +### 8 创建一个项目,创建一个新的控制器,名为Blogs,新的控制器拥有一个名为Index的Action,该方法返回一个视图,视图显示“神级预判” +![20241124210711](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124210711.png) +### 9 给第8题的新控制,添加一个新的Action,名为Music,不接受任何参数,并返回对应的视图,视图显示“顶级打野” +![20241124210723](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124210723.png) +### 10 给第8题的新控制器,新增一个Action,名为List,不接受任何参数,并返回对应视图,视图显示一个经典CRUD界面 +![20241124211157](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124211157.png) +### 11 新增一个控制器,名为Products,该控制器具有一个名为Edit的Action,这个Action接受一个int类型的参数id,显示这个id +![20241124211114](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124211114.png) +### 12 在11题的新控制器中,新增一个名为Create的Action,该Action接受一个类型为Students(有姓名、年龄、体长属性)的参数,并展示该参数的姓名属性 +![20241124211256](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124211256.png) \ No newline at end of file diff --git "a/\345\274\240\346\200\241\347\220\264/20241121-\346\216\247\345\210\266\345\231\250\345\217\202\346\225\260\345\217\212\350\247\206\345\233\276.md" "b/\345\274\240\346\200\241\347\220\264/20241121-\346\216\247\345\210\266\345\231\250\345\217\202\346\225\260\345\217\212\350\247\206\345\233\276.md" new file mode 100644 index 0000000000000000000000000000000000000000..0706d44b3bfa347f7d1bb129c714e4145cdb65b6 --- /dev/null +++ "b/\345\274\240\346\200\241\347\220\264/20241121-\346\216\247\345\210\266\345\231\250\345\217\202\346\225\260\345\217\212\350\247\206\345\233\276.md" @@ -0,0 +1,6 @@ +### 控制器的参数 +## 方式1--地址传参 +url/值 接收一般为id,可以在路由更改。 + +## 方式2--[FromBody]传参 +定义一个类接收 类名CreateDto 定义属性 访问前提: 类前面加请求方式[HttpPost] 参数前面加[FromBody] \ No newline at end of file diff --git "a/\345\274\240\346\200\241\347\220\264/20241122-\346\216\247\345\210\266\345\231\250\345\217\202\346\225\260\345\222\214\350\277\224\345\233\236\345\200\274\344\273\245\345\217\212\350\247\206\345\233\276.md" "b/\345\274\240\346\200\241\347\220\264/20241122-\346\216\247\345\210\266\345\231\250\345\217\202\346\225\260\345\222\214\350\277\224\345\233\236\345\200\274\344\273\245\345\217\212\350\247\206\345\233\276.md" new file mode 100644 index 0000000000000000000000000000000000000000..0450196314ac094677d98ef589009c10b5501688 --- /dev/null +++ "b/\345\274\240\346\200\241\347\220\264/20241122-\346\216\247\345\210\266\345\231\250\345\217\202\346\225\260\345\222\214\350\277\224\345\233\236\345\200\274\344\273\245\345\217\212\350\247\206\345\233\276.md" @@ -0,0 +1,44 @@ +# 控制器返回值 +- 一般数据类型 +- IActionResult类型(接口) +- ActionResult类型(接口加一般数据类型) +- 特定于格式的操作结果 +- Poco(普通旧CLR对象) +# 视图 +控制器返回值通过 @model 数据类型 ----》接收数据 + +# 作业 +## 专项练习-控制器传参 +### 简单参数传递 在一个叫Blog控制器中,定义一个叫Index的Action,并且传递一个int类型的值,id为变量名 +### 简单参数传递 在一个叫Blog控制器中,定义一个叫Index_2的Action,并且传递一个string类型的值,id为变量名 +### 简单参数传递 在一个叫Blog控制器中,定义一个叫Index_3的Action,并且传递一个string类型的值,name为变量名 +### 复杂参数传递 在一个叫Blog的控制器中,定义一个名为Create的Action,并且传递一个BlogCreateDto类型的值,blogCreateDto为变量名 +### 复杂参数传递 在一个叫Blog的控制器中,定义一个名为Create_1的Action,并且传递一个Products类型的值,productCreateDto为变量名 +### 复杂参数传递 在一个叫Blog的控制器中,定义一个名为Create_2的Action,并且传递一个Students类型的值,studentCreateDto为变量名 +![20241124215511](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124215511.png) +![20241124215523](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124215523.png) + + +## 专项练习-基础能力 +### 生成一个随机整数,范围[0,100],注意是否包含 +![20241124220109](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220109.png) +### 生成一个随机整数,范围(0,100],注意是否包含 +![20241124220120](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220120.png) +### 生成10个随机整数,范围[5,80],注意是否包含 +![20241124220130](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220130.png) +### 定义一个字符串,字符串中有100个中文字符,需要从中随机取1个字符串 +![20241124220146](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220146.png) +### 定义一个字符串,字符串中有100个中文字符,需要从中随机取5-50个字符,组成新的字符 +![20241124220200](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220200.png) +### 定义2个字符串,第一个字符串中放百家姓,第二个字符串中放中文字符,要求从第一个字符串随机取得一个姓,再从第二个字符串中随机获得1到2个字符组成新字符串,和第一个字符串取得的姓组成一个姓名 +![20241124220213](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220213.png) +### 利用以上方法,随机生成100个BlogCreateDto类型(有Title、Author、Content属性)的对象,其中的内容都是随机生成且长度不定,并将其渲染到视图 +![20241124220253](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220253.png) + +## 专项练习-控制器返回值 +### 渲染简单数据到页面 +![20241124220332](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220332.png) +### 渲染复杂数据到页面 +![20241124220347](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220347.png) +### 渲染集合数据到页面 +![20241124220347](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241124220347.png) \ No newline at end of file diff --git "a/\345\274\240\346\200\241\347\220\264/20241126-\346\255\243\346\226\271\345\220\221\344\273\243\347\220\206.md" "b/\345\274\240\346\200\241\347\220\264/20241126-\346\255\243\346\226\271\345\220\221\344\273\243\347\220\206.md" new file mode 100644 index 0000000000000000000000000000000000000000..51ca6f3e7a4dc861123f24ec210a12dabee5db6d --- /dev/null +++ "b/\345\274\240\346\200\241\347\220\264/20241126-\346\255\243\346\226\271\345\220\221\344\273\243\347\220\206.md" @@ -0,0 +1,8 @@ +# 正向代理 +pc ————》 由于一些原因不能直接访问web服务器(例如:隐藏ip等原因) ——X——》 web服务器 +pc ——通过找一个——》 代理服务器 ——让代理服务器去访问——》 web服务器 + +# 反向代理 +pc ——X——》 隐藏的web服务器 +web服务器 ————》 设置一个 ————》 代理服务器 +pc端 ————》 访问 ————》 代理服务器(只能通过代理服务器去访问) ————》 访问 ————》 web服务器 \ No newline at end of file diff --git "a/\345\274\240\346\200\241\347\220\264/20241128-\350\247\206\345\233\276.md" "b/\345\274\240\346\200\241\347\220\264/20241128-\350\247\206\345\233\276.md" new file mode 100644 index 0000000000000000000000000000000000000000..5ffbad4384bdc4b6ff2d90521afe129eb7925b44 --- /dev/null +++ "b/\345\274\240\346\200\241\347\220\264/20241128-\350\247\206\345\233\276.md" @@ -0,0 +1,20 @@ +## 视图定义属性 +定义: @{ 属性(键值对) } 调用: @键 + +## 接收view +@model 命名空间.类名 @Model.键 + +## 定位点 + + +# 作业 +## 1 +![20241201173305](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241201173305.png) +## 2 +![20241201173333](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241201173333.png) +## 3 +![20241201173411](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241201173411.png) +## 4 +![20241201173447](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241201173447.png) +## 5 +![20241201173641](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241201173641.png) \ No newline at end of file diff --git "a/\345\274\240\346\200\241\347\220\264/20241205-\350\241\250\345\215\225.md" "b/\345\274\240\346\200\241\347\220\264/20241205-\350\241\250\345\215\225.md" new file mode 100644 index 0000000000000000000000000000000000000000..56d28a5108a5eccc875b9ca8aa7b58e9fc48c3ae --- /dev/null +++ "b/\345\274\240\346\200\241\347\220\264/20241205-\350\241\250\345\215\225.md" @@ -0,0 +1,41 @@ +# 表单 +基本表单结构: +``` +
+ + +``` +控制器: 在该方法名前面加 [HttpPost] 该方法参数为 (类型 变量名) + +删除写一个新的方法 按钮 进行删除然后返回首页 + +## 作业 +![20241208003857](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208003857.png) +![20241208004338](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208004338.png) +![20241208004414](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208004414.png) +![20241208004447](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208004447.png) +![20241208004519](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208004519.png) +![20241208004554](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208004554.png) +![20241208004625](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208004625.png) +![20241208004649](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208004649.png) +![20241208004713](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208004713.png) +![20241208004734](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208004734.png) +![20241208004820](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208004820.png) +![20241208004844](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208004844.png) +![20241208004914](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208004914.png) +![20241208004934](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208004934.png) +![20241208004955](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208004955.png) +![20241208005340](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208005340.png) +![20241208005039](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208005039.png) +![20241208005421](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208005421.png) +![20241208005450](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208005450.png) +![20241208005514](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208005514.png) +![20241208005542](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208005542.png) +![20241208005603](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208005603.png) +![20241208005624](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208005624.png) +![20241208005645](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208005645.png) +![20241208005708](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208005708.png) +![20241208005725](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208005725.png) +![20241208005745](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208005745.png) +![20241208005803](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208005803.png) +![20241208005819](https://lemik.oss-cn-shenzhen.aliyuncs.com/20241208005819.png) \ No newline at end of file