From bbf2226dc27a5b43a44add607e8027ebcbfb667c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=91=E5=8A=9B=E8=B1=AA?= <2900882185@qq.com> Date: Sun, 15 Dec 2024 19:11:10 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...05\345\214\226\346\226\271\346\241\210.md" | 45 ++++++++ ...45\350\257\242\346\213\223\345\261\225.md" | 106 ++++++++++++++++++ 2 files changed, 151 insertions(+) create mode 100644 "\351\203\221\345\212\233\350\261\252/20241213--\346\214\201\344\271\205\345\214\226\346\226\271\346\241\210.md" create mode 100644 "\351\203\221\345\212\233\350\261\252/20241214--\351\233\206\346\210\220\346\237\245\350\257\242\346\213\223\345\261\225.md" diff --git "a/\351\203\221\345\212\233\350\261\252/20241213--\346\214\201\344\271\205\345\214\226\346\226\271\346\241\210.md" "b/\351\203\221\345\212\233\350\261\252/20241213--\346\214\201\344\271\205\345\214\226\346\226\271\346\241\210.md" new file mode 100644 index 0000000..12a97b1 --- /dev/null +++ "b/\351\203\221\345\212\233\350\261\252/20241213--\346\214\201\344\271\205\345\214\226\346\226\271\346\241\210.md" @@ -0,0 +1,45 @@ +### 1.持久化及持久化方案 ++ 结绳记事 ++ 甲骨文 ++ 木简 ++ 竹简 ++ 碑 ++ 纸 ++ 脚本 ++ 电子的文件,如文本文件、Excel、Word ++ 数据库 +### 2.Models数据库模型 ++ 模型中的每一个类型,都和数据库表中的数据库表一一对应 ++ 一条数据表中的记录,在程序或者应用中表现为一个对象 ++ 一系列记录,则在程序和应用中表现为一个集合 +### 3.连接数据库: +1. 定义数据库模型 +```cs +using Microsoft.EntityFrameworkCore; +namespace Blogs.Models; +public class BlogDbContext : DbContext +{ + public BlogDbContext(DbContextOptions options) : base(options) + { + } + public DbSet Blogs { get; set; } = null!; +} +``` + +2. 在Program.cs文件中添加连接数据库语句,以及执行操作代码 +```cs +var connectionString = $"Server=.;Database=MdBlog;uid=sa;pwd=123456;TrustServerCertificate=true"; + +builder.Services.AddDbContext(opt => +{ + opt.UseSqlServer(connectionString); +}); +builder.Services.AddScoped(); +``` + +3. 终端相关运行步骤 ++ 安装工具“dotnet-ef”:`dotnet tool install --global dotnet-ef` + - 安装包 Microsoft.EntityFrameworkCore.Design + `dotnet add package Microsoft.EntityFrameworkCore.Design` + - 添加迁移数据:`dotnet ef migrations add InitCreate` + - 将迁移文件更新到数据库:`dotnet ef database update` \ No newline at end of file diff --git "a/\351\203\221\345\212\233\350\261\252/20241214--\351\233\206\346\210\220\346\237\245\350\257\242\346\213\223\345\261\225.md" "b/\351\203\221\345\212\233\350\261\252/20241214--\351\233\206\346\210\220\346\237\245\350\257\242\346\213\223\345\261\225.md" new file mode 100644 index 0000000..1e6b6d1 --- /dev/null +++ "b/\351\203\221\345\212\233\350\261\252/20241214--\351\233\206\346\210\220\346\237\245\350\257\242\346\213\223\345\261\225.md" @@ -0,0 +1,106 @@ +1. Where筛选 +```cs + List numbers = new List { 1, 2, 3, 4, 5 }; + var evenNumbers = numbers.Where(x => x % 2 == 0); +``` +2. Select投影 +```cs + var squares = numbers.Select(x => x * x); // 将每个数字映射为其平方 +``` +3. OrderBy/OrderByDescending排序 +```cs + var c = numbers.OrderBy(x => x); // 升序排序 + var d= numbers.OrderByDescending(x => x); // 降序排序 +``` +4. GroupBy分组 +```cs + var e= numbers.GroupBy(x => x % 2 == 0); // 根据数字是否为偶数进行分组 +``` +5. Aggregate聚合 +```cs + int sum = numbers.Aggregate((total, x) => total + x); // 计算总和 +``` +6. Join联接 +```cs + List f= new List { "apple", "banana", "cherry" }; + var g = words.Select(word => word.ToUpper()); // 将单词转换为大写 + var h = string.Join(", ", g); // 用逗号连接单词 +``` +7. Count计数 +```cs + int count = numbers.Count(); // 计算集合中的元素数量 +``` +8. Any/All存在/全部 +```cs + bool hasEven = numbers.Any(x => x % 2 == 0); // 检查是否有偶数 + bool allPositive = numbers.All(x => x > 0); // 检查所有数字是否都大于0 +``` +9. Contains包含 +```cs + bool containsThree = numbers.Contains(3); // 检查集合中是否包含数字3 +``` +10. DefaultIfEmpty默认值 +```cs + IEnumerable emptyList = Enumerable.Empty(); + var defaultList = emptyList.DefaultIfEmpty(-1); // 如果集合为空,则返回-1 +``` +11. First / FirstOrDefault + ++ First():返回集合中的第一个元素。 ++ FirstOrDefault():返回集合中的第一个元素,如果集合为空,则返回默认值。 + +12. Last / LastOrDefault ++ Last():返回集合中的最后一个元素。 ++ LastOrDefault():返回集合中的最后一个元素,如果集合为空,则返回默认值。 + +13. Single / SingleOrDefault ++ Single():返回集合中的唯一元素,如果集合不包含恰好一个元素,则抛出异常。 ++ SingleOrDefault():返回集合中的唯一元素,如果集合为空或包含多个元素,则返回默认值。 + +14. ElementAt / ElementAtOrDefault ++ ElementAt():返回集合中指定索引位置的元素。 ++ ElementAtOrDefault():返回集合中指定索引位置的元素,如果索引超出范围,则返回默认值。 + +15. Sum():计算集合中所有元素的总和 + +16. Average():计算集合中所有元素的平均值 + +17. Min / Max ++ Min():返回集合中最小值。 ++ Max():返回集合中最大值。 + +18. Take / TakeWhile ++ Take():返回集合中前N个元素。 ++ TakeWhile():返回集合中满足条件的前N个元素。 + +19. Skip / SkipWhile ++ Skip():跳过集合中前N个元素,返回剩余元素。 ++ SkipWhile():跳过集合中满足条件的前N个元素,返回剩余元素。 + +20. Distinct():返回集合中不重复的元素 + +21. Concat():连接两个集合 + +22. Any / All ++ Any():检查集合中是否至少有一个元素满足条件。 ++ All():检查集合中的所有元素是否都满足条件。 + +23. SequenceEqual(检查两个集合是否按相同的顺序包含相同的元素) + +24. Reverse(反转集合中元素的顺序) + +25. DefaultIfEmpty(返回一个新的集合,如果原集合为空,则包含一个指定的默认值) + +26. OfType(筛选出特定类型的元素) + +27. Cast / Convert(将集合中的元素转换为指定类型) + +28. GroupJoin / Join(类似于 SQL 中的 JOIN 操作,可以基于一个共同的键将两个集合结合起来) + +29. Zip(将两个集合中的对应元素配对) + +30. Union(合并两个集合,去除重复项) + +31. Intersect(找出两个集合的交集) + +32. AsEnumerable(将非泛型集合转换为泛型 IEnumerable) -- Gitee