diff --git "a/\345\220\264\351\221\253\351\270\277/20241125action\350\277\224\345\233\236\345\200\274\347\261\273\345\236\213.md" "b/\345\220\264\351\221\253\351\270\277/20241125action\350\277\224\345\233\236\345\200\274\347\261\273\345\236\213.md" index df052aff085356b1f5bdf00e288e1ae5b72df4f2..40bdaff46dda9dad450d328d7f94f7ed09b905b5 100644 --- "a/\345\220\264\351\221\253\351\270\277/20241125action\350\277\224\345\233\236\345\200\274\347\261\273\345\236\213.md" +++ "b/\345\220\264\351\221\253\351\270\277/20241125action\350\277\224\345\233\236\345\200\274\347\261\273\345\236\213.md" @@ -25,7 +25,7 @@ return View(Number); } 屏幕截图 2024-11-26 230635.png -3.public IActionResult Index3(){ +3.public List Index3(){ Random rand=new Random(); Listnumber=new List(); for (int i = 0; i < 10; i++) @@ -33,7 +33,7 @@ int Number=rand.Next(5,81); number.Add(Number); }; - return View(number); + return number; } 屏幕截图 2024-11-26 230805.png 4.public IActionResult Index4(){ @@ -55,4 +55,4 @@ } return View(newStr); } -屏幕截图 2024-11-26 230851.png \ No newline at end of file + 屏幕截图 2024-11-26 230851.png \ No newline at end of file diff --git "a/\345\220\264\351\221\253\351\270\277/20241127razor\346\246\202\345\277\265.md" "b/\345\220\264\351\221\253\351\270\277/20241127razor\346\246\202\345\277\265.md" new file mode 100644 index 0000000000000000000000000000000000000000..2e3ea559ee157eba72119deba5f7b42c56dd87a9 --- /dev/null +++ "b/\345\220\264\351\221\253\351\270\277/20241127razor\346\246\202\345\277\265.md" @@ -0,0 +1,71 @@ +# Razor基本概念 +定义: Razor是一种标记语法,允许开发者在HTML中嵌入C#代码。它通过使用@符号来转换HTML和C#代码 +文件扩展名: 通常,Razor视图文件使用.cshtml扩展名,这意味着这些文件包含HTML和C#代码 +## Razor的功能 + +* 嵌入C#代码: Razor支持在HTML中直接编写C#代码,使得开发者可以动态生成内容。例如,可以使用@DateTime.Now来显示当前日期和时间 + +* 表达式和代码块: 隐式表达式: 以@开头,后跟C#代码,如@Model.Property。 显式表达式: 使用@()包裹C#表达式,以确保表达式正确解析 + +* 代码块: 使用@{}来包含多行C#代码,这些代码不会直接输出到HTML中,而是用于逻辑处理 + +* 数据绑定: Razor支持与模型(Model)的双向数据绑定,允许视图直接访问和显示模型数据 + +* 布局和部分视图: Razor支持布局(Layouts)和部分视图(Partial Views),这使得开发者可以重用代码并保持一致的页面结构 + +* 控制结构: Razor支持C#的控制结构,如@if、@for、@foreach等,这些结构允许开发者在视图中实现复杂的逻辑 + +试图及其模板引擎: +public IActionResult Index6(){ + var list=new List{ + new BlogCreateDto{ + ID="1", + Title="33333", + Content="9999", + Author="" + }, + new BlogCreateDto{ + ID="2", + Title="33333", + Content="9999", + Author="" + }, + new BlogCreateDto{ + ID="3", + Title="33333", + Content="9999", + Author="" + }, + new BlogCreateDto{ + ID="4", + Title="33333", + Content="9999", + Author="" + }, + }; + return View(list); + } +Index6.cshtml: +@model List + + + 新增 + + + + + +@foreach(var item in Model){ + + + + + + +} +
ID标题内容作者
@item.ID@item.Title@item.Content@item.Author + 编辑 + 详情 + 删除 +
+屏幕截图 2024-11-28 232437.png \ No newline at end of file diff --git "a/\345\220\264\351\221\253\351\270\277/20241129\345\210\227\350\241\250\346\267\273\345\212\240.md" "b/\345\220\264\351\221\253\351\270\277/20241129\345\210\227\350\241\250\346\267\273\345\212\240.md" new file mode 100644 index 0000000000000000000000000000000000000000..6133cc7e298fbe842c0ff5a2f07821bd54b63929 --- /dev/null +++ "b/\345\220\264\351\221\253\351\270\277/20241129\345\210\227\350\241\250\346\267\273\345\212\240.md" @@ -0,0 +1,53 @@ +## 定义一个模型,充当数据库 +``` +//创建一个静态类 +public static class Db{ + // public static List Student {get;set;}=new List (); + + //声明一个静态属性,List为类型 + public static List Student {get;set;} + // 构建静态函数,只执行一次 + static Db(){ + //初始化静态属性 + Student=new List(); + //给这个集合属性添加一些Student + for (int i = 0; i < 10; i++) + { + var stu=new Student{ + Id=i+1, + Name="徐梓淳", + Title="嫌晚", + Content="你是我任何时候遇见都不嫌晚的人", + }; + Student.Add(stu); + } + } +} +``` +## 添加操作 +``` +@* 添加 *@ +@model Baby2.Models.Student; + +
+
+
+
+ +
+``` +## 使用post请求 +``` + //使用post请求 + [HttpPost] + public IActionResult Index_2(Student input){ + //获取最大的Id + var maxId=Two.Student.Select(t=>t.Id).Max(); + //在该基础上加1 + input.Id=maxId+1; + //将内容添加到表单中 + Two.Student.Add(input); + //内容添加好后重新定向到主页面 + return RedirectToAction("index_1"); + } +``` \ No newline at end of file