From 93d19f5d124d6d220b785789af504286037b7ead Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=B1=9F=E6=96=87=E6=B7=AF?=
<14131014+jiang-wenyu0212@user.noreply.gitee.com>
Date: Wed, 4 Dec 2024 10:20:07 +0800
Subject: [PATCH 1/2] 1204
---
.../20241204.LING.md" | 12 ++++++++++++
1 file changed, 12 insertions(+)
create mode 100644 "\346\261\237\346\226\207\346\267\257/20241204.LING.md"
diff --git "a/\346\261\237\346\226\207\346\267\257/20241204.LING.md" "b/\346\261\237\346\226\207\346\267\257/20241204.LING.md"
new file mode 100644
index 0000000..58e1a2a
--- /dev/null
+++ "b/\346\261\237\346\226\207\346\267\257/20241204.LING.md"
@@ -0,0 +1,12 @@
+## LING & Lanmbda
+1. 查询是一种从数据源检索数据的表达式,查询通常用专门的查询语言来表示。LINQ最大的优势就是可使用相同的基本查询表达式模式来查询和转换SQL数据库,ADO.NET数据集,XML文档和流及.NET合集中的数据,极大的降低了学习成本提高了代码维护性和可续性
+## 基本LINQ操作
+1. 简单的例子,以下代码是从customers中获取city为london或者Paris的成员,然后排序。比起传统的foreach+if else 简单多了
+- var queryLondonCustomers = from cust in customers
+- where cust.city == "london" || cust.city == "Paris"
+- orderby cust.Name ascending 4
+- select cust;
+## lambda表达式
+1. 如何写一个Lambda表达式
+- 首先,在写lambda表达式之前。需要先了解两个特殊的类型:Func和Action
+这是两个委托,这里先不急着了解什么是委托,可以把它们当做是一种名称规范就行,他们都可以表示一个方法,不容的是其中FUNC、表示有一个返回值的方法,Action表示一个没有返回值的方法。
\ No newline at end of file
--
Gitee
From 7007e55a904d76204408c5f3b62d282ac607c13b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=B1=9F=E6=96=87=E6=B7=AF?=
<14131014+jiang-wenyu0212@user.noreply.gitee.com>
Date: Mon, 9 Dec 2024 13:07:02 +0800
Subject: [PATCH 2/2] 1205
---
...44\357\274\214\350\247\206\345\233\276.md" | 32 ++
.../Blogs/Blogs.csproj" | 10 +
.../Blogs/Program.cs" | 373 ++++++++++++++++++
.../Blogs/bin/Debug/net8.0/Blogs.deps.json" | 23 ++
.../Blogs/bin/Debug/net8.0/Blogs.dll" | Bin 0 -> 7680 bytes
.../Blogs/bin/Debug/net8.0/Blogs.exe" | Bin 0 -> 138752 bytes
.../Blogs/bin/Debug/net8.0/Blogs.pdb" | Bin 0 -> 11056 bytes
.../Debug/net8.0/Blogs.runtimeconfig.json" | 12 +
.../Blogs/obj/Blogs.csproj.nuget.dgspec.json" | 68 ++++
.../Blogs/obj/Blogs.csproj.nuget.g.props" | 15 +
.../Blogs/obj/Blogs.csproj.nuget.g.targets" | 2 +
...oreApp,Version=v8.0.AssemblyAttributes.cs" | 4 +
.../obj/Debug/net8.0/Blogs.AssemblyInfo.cs" | 22 ++
.../net8.0/Blogs.AssemblyInfoInputs.cache" | 1 +
...GeneratedMSBuildEditorConfig.editorconfig" | 13 +
.../obj/Debug/net8.0/Blogs.GlobalUsings.g.cs" | 8 +
.../obj/Debug/net8.0/Blogs.assets.cache" | Bin 0 -> 153 bytes
.../Blogs.csproj.CoreCompileInputs.cache" | 1 +
.../net8.0/Blogs.csproj.FileListAbsolute.txt" | 28 ++
.../Blogs/obj/Debug/net8.0/Blogs.dll" | Bin 0 -> 7680 bytes
.../net8.0/Blogs.genruntimeconfig.cache" | 1 +
.../Blogs/obj/Debug/net8.0/Blogs.pdb" | Bin 0 -> 11056 bytes
.../Blogs/obj/Debug/net8.0/apphost.exe" | Bin 0 -> 138752 bytes
.../Blogs/obj/Debug/net8.0/ref/Blogs.dll" | Bin 0 -> 6144 bytes
.../Blogs/obj/Debug/net8.0/refint/Blogs.dll" | Bin 0 -> 6144 bytes
.../Blogs/obj/project.assets.json" | 73 ++++
.../Blogs/obj/project.nuget.cache" | 8 +
27 files changed, 694 insertions(+)
create mode 100644 "\346\261\237\346\226\207\346\267\257/20241205-\345\210\240\351\231\244\357\274\214\350\247\206\345\233\276.md"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/Blogs.csproj"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/Program.cs"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/bin/Debug/net8.0/Blogs.deps.json"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/bin/Debug/net8.0/Blogs.dll"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/bin/Debug/net8.0/Blogs.exe"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/bin/Debug/net8.0/Blogs.pdb"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/bin/Debug/net8.0/Blogs.runtimeconfig.json"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/obj/Blogs.csproj.nuget.dgspec.json"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/obj/Blogs.csproj.nuget.g.props"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/obj/Blogs.csproj.nuget.g.targets"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/obj/Debug/net8.0/Blogs.AssemblyInfo.cs"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/obj/Debug/net8.0/Blogs.AssemblyInfoInputs.cache"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/obj/Debug/net8.0/Blogs.GeneratedMSBuildEditorConfig.editorconfig"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/obj/Debug/net8.0/Blogs.GlobalUsings.g.cs"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/obj/Debug/net8.0/Blogs.assets.cache"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/obj/Debug/net8.0/Blogs.csproj.CoreCompileInputs.cache"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/obj/Debug/net8.0/Blogs.csproj.FileListAbsolute.txt"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/obj/Debug/net8.0/Blogs.dll"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/obj/Debug/net8.0/Blogs.genruntimeconfig.cache"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/obj/Debug/net8.0/Blogs.pdb"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/obj/Debug/net8.0/apphost.exe"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/obj/Debug/net8.0/ref/Blogs.dll"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/obj/Debug/net8.0/refint/Blogs.dll"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/obj/project.assets.json"
create mode 100644 "\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/obj/project.nuget.cache"
diff --git "a/\346\261\237\346\226\207\346\267\257/20241205-\345\210\240\351\231\244\357\274\214\350\247\206\345\233\276.md" "b/\346\261\237\346\226\207\346\267\257/20241205-\345\210\240\351\231\244\357\274\214\350\247\206\345\233\276.md"
new file mode 100644
index 0000000..70a5b17
--- /dev/null
+++ "b/\346\261\237\346\226\207\346\267\257/20241205-\345\210\240\351\231\244\357\274\214\350\247\206\345\233\276.md"
@@ -0,0 +1,32 @@
+### 控制台
+1. 创建一个名为BlogsController.cs(一定要有Controller)
+2. 在View里创建对应的Blogs文件,里面有返回的Index视图
+3. View里完成表单的创建和美化
+4. 在Models里创建一个Blogs.cs,里面写上要传递的参数
+## 查询
+
+1. 控制器
+```c#
+ public IActionResult Index(string oi)
+ {
+
+
+ if(string.IsNullOrEmpty(oi))
+ {
+ return View(DB.B);
+ }
+ oi=string.IsNullOrEmpty(oi)?"":oi.Trim();
+ var a=DB.B.Where(x=>x.Title.Contains(oi)|| x.Content.Contains(oi)|| x.Author.Contains(oi));
+ return View(a);
+
+ }
+```
+2. 视图
+```html
+
+```
\ No newline at end of file
diff --git "a/\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/Blogs.csproj" "b/\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/Blogs.csproj"
new file mode 100644
index 0000000..2150e37
--- /dev/null
+++ "b/\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/Blogs.csproj"
@@ -0,0 +1,10 @@
+
+
+
+ Exe
+ net8.0
+ enable
+ enable
+
+
+
diff --git "a/\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/Program.cs" "b/\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/Program.cs"
new file mode 100644
index 0000000..dfe3f11
--- /dev/null
+++ "b/\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/Program.cs"
@@ -0,0 +1,373 @@
+using System;
+using System.Linq;
+
+namespace Blogs
+{
+ public class Student
+{
+ public int Id { get; set; }
+ public string Name { get; set; }
+ public int Age { get; set; }
+}
+ class Program
+ {
+ public class Course
+{
+ public int StudentId { get; set; }
+ public string CourseName { get; set; }
+}
+
+
+ static void Main(string[] args)
+ {
+ 初始化数组
+ int[] numbers = { 1, 2, 3, 4, 5, 6 };
+
+ // 查询等于5的元素
+ var query1 = numbers.Where(n => n == 5);
+
+ // 打印结果
+ foreach (var num in query1)
+ {
+ Console.WriteLine(num);
+ }
+
+ Console.WriteLine("------------------------------------");
+ // 找出数组中在2到8之间的元素。
+ var query2 = numbers.Where(n => n >= 2 && n <= 8);
+ foreach (var num in query2)
+ {
+ Console.WriteLine(num);
+ }
+ Console.WriteLine("---------------------");
+ // 将数组中的每个数字乘以2
+ var query3 = numbers.Select(n => n * 2);
+ foreach (var num in query3)
+ {
+ Console.WriteLine(num);
+ }
+ Console.WriteLine("====================");
+ // 找出所有名字以"王"开头的学生。
+ List students = new List
+ {
+ new Student
+ {
+ Id = 1,
+ Name = "王有才",
+ Age = 21,
+ },
+ new Student
+ {
+ Id = 2,
+ Name = "王中王",
+ Age = 22,
+ },
+ new Student
+ {
+ Id = 3,
+ Name = "张语嫣",
+ Age = 23,
+ },
+ new Student
+ {
+ Id = 4,
+ Name = "詹宇航",
+ Age = 35,
+ },
+ new Student
+ {
+ Id = 5,
+ Name = "郑雨良",
+ Age = 26,
+ },
+ };
+ var wangStu = students.Where(name => name.Name.StartsWith("王"));
+ foreach (var stu in wangStu)
+ {
+ Console.WriteLine(stu.Name);
+ }
+ // 找出所有年龄大于20岁的学生,并按年龄降序排列
+ List students = new List
+ {
+ new Student
+ {
+ Id = 1,
+ Name = "王有才",
+ Age = 21,
+ },
+ new Student
+ {
+ Id = 2,
+ Name = "罗婷",
+ Age = 21,
+ },
+ new Student
+ {
+ Id = 3,
+ Name = "王中王",
+ Age = 22,
+ },
+ new Student
+ {
+ Id = 4,
+ Name = "李子柒",
+ Age = 22,
+ },
+ new Student
+ {
+ Id = 5,
+ Name = "张语嫣",
+ Age = 23,
+ },
+ new Student
+ {
+ Id = 6,
+ Name = "詹宇航",
+ Age = 35,
+ },
+ new Student
+ {
+ Id = 7,
+ Name = "郑雨良",
+ Age = 26,
+ },
+ new Student
+ {
+ Id = 8,
+ Name = "欧文",
+ Age = 26,
+ },
+ };
+ var sortedStudents = students.Where(s => s.Age > 20).OrderByDescending(s => s.Age);
+ foreach (var stu in sortedStudents)
+ {
+ Console.WriteLine(stu.Name);
+ }
+ // 找出数组中所有不重复的数字
+ int[] numbers = { 1, 2, 3, 4, 5, 6, 18, 23, 64, 7, 18, 2, 3 };
+ var distinctResult = numbers.Distinct();
+ foreach (var num in distinctResult)
+ {
+ Console.WriteLine(num);
+ }
+ // 查询第一个元素 找出数组中第一个大于3的元素。
+ int[] numbers = { 1, 2, 3, 4, 5, 6, 18, 23, 64, 7, 18, 2, 3 };
+ var first = numbers.FirstOrDefault(n => n > 3);
+ Console.WriteLine(first);
+
+ // 查询最后一个元素 找出数组中最后一个小于7的元素。
+ int[] numbers = { 1, 2, 3, 4, 5, 6, 18, 23, 64, 7, 18, 2, 3 };
+ var last = numbers.Where(n => n < 7).Last();
+ Console.WriteLine(last);
+
+ // 查询元素是否存在 检查数组中是否存在大于10的元素。
+ int[] numbers = { 1, 2, 3, 4, 5, 6, 18, 23, 64, 7, 18, 2, 3 };
+ bool i = numbers.Any(n => n > 10);
+ Console.WriteLine(i);
+
+ // 查询元素的计数 计算数组中大于5的元素数量。
+ int[] numbers = { 1, 2, 3, 4, 5, 6, 18, 23, 64, 7, 18, 2, 3 };
+ int num = numbers.Count(n => n > 5);
+ Console.WriteLine(num);
+ // 查询元素的总和 计算数组中所有元素的总和。
+ int sum = numbers.Sum();
+ Console.WriteLine($"总和: {sum}");
+
+ // 查询元素的最大值 找出数组中的最大值。
+ int max = numbers.Max();
+ Console.WriteLine($"最大值: {max}");
+
+ // 查询元素的最小值 找出数组中的最小值。
+ int min = numbers.Min();
+ Console.WriteLine($"最小值: {min}");
+
+ // 查询元素的平均值 计算数组中所有元素的平均值。
+ double average = numbers.Average();
+ Console.WriteLine($"平均值: {average}");
+
+ // 查询特定条件的元素 找出数组中能被3整除的元素。
+ var divisibleBy3 = numbers.Where(n => n % 3 == 0);
+ foreach (var num in divisibleBy3)
+ {
+ Console.WriteLine(num);
+ }
+
+ //查询并选择特定属性 找出所有学生的姓名和年龄。
+
+ var result = students.Select(s => new { s.Name, s.Age }).ToList();
+ foreach (var item in result)
+ {
+ Console.WriteLine($"Name: {item.Name}, Age: {item.Age}");
+ }
+
+ // 查询并分组 按年龄分组学生,并计算每个年龄组的学生数量。
+ var groupedByAge = students
+ .GroupBy(s => s.Age)
+ .Select(g => new { Age = g.Key, Count = g.Count() })
+ .ToList();
+ foreach (var item in groupedByAge)
+ {
+ Console.WriteLine($"Age: {item.Age}, Count: {item.Count}");
+ }
+
+ // 查询并联结 联结学生和课程表,找出每个学生的所有课程。
+ List students = new List
+ {
+ new Student
+ {
+ Id = 1,
+ Name = "王有才",
+ Age = 21,
+ },
+ new Student
+ {
+ Id = 2,
+ Name = "罗婷",
+ Age = 21,
+ },
+ new Student
+ {
+ Id = 3,
+ Name = "王中王",
+ Age = 22,
+ },
+ new Student
+ {
+ Id = 4,
+ Name = "李子柒",
+ Age = 22,
+ },
+ new Student
+ {
+ Id = 5,
+ Name = "张语嫣",
+ Age = 23,
+ },
+ new Student
+ {
+ Id = 6,
+ Name = "詹宇航",
+ Age = 35,
+ },
+ new Student
+ {
+ Id = 7,
+ Name = "郑雨良",
+ Age = 26,
+ },
+ new Student
+ {
+ Id = 8,
+ Name = "欧文",
+ Age = 26,
+ },
+ };
+ List courses = new List
+ {
+ new Course { StudentId = 1, CourseName = "英语" },
+ new Course { StudentId = 1, CourseName = "数学" },
+ new Course { StudentId = 2, CourseName = "语文" },
+ new Course { StudentId = 3, CourseName = "物理" },
+ new Course { StudentId = 4, CourseName = "化学" },
+ new Course { StudentId = 4, CourseName = "生物" },
+ new Course { StudentId = 4, CourseName = "语文" },
+ };
+ var query =
+ from student in students
+ join course in courses on student.Id equals course.StudentId
+ select new { student.Name, course.CourseName };
+
+ foreach (var item in query)
+ {
+ Console.WriteLine($"Name: {item.Name}, Course: {item.CourseName}");
+ }
+
+ // 查询并反转 反转数组中的元素顺序。
+ int[] numbers = { 1, 2, 3, 4, 5, 6, 18, 23, 64, 7, 18, 2, 3 };
+ var reversed = numbers.Reverse().ToArray();
+ foreach (var num in reversed)
+ {
+ Console.WriteLine(num);
+ }
+
+ // 查询并填充 找出数组中第一个大于2的元素,并用它填充后面的所有位置。
+ int firstGreaterThanTwo = numbers.FirstOrDefault(n => n > 2);
+ for (
+ int i = numbers.IndexOf(numbers.FirstOrDefault(n => n > 2));
+ i < numbers.Length;
+ i++
+ )
+ {
+ numbers[i] = firstGreaterThanTwo;
+ }
+ foreach (var num in numbers)
+ {
+ Console.WriteLine(num);
+ }
+
+ // 查询并排除 从数组中排除所有小于5的元素。
+ var filtered = numbers.Where(n => n > 5).ToArray();
+ foreach (var num in filtered)
+ {
+ Console.WriteLine(num);
+ }
+
+ // 查询并填充默认值 如果数组中存在null值,用默认值0替换
+ int?[] nullableNumbers = { 1, null, 3, null, 5 };
+ var filled = nullableNumbers.Select(n => n ?? 0).ToArray();
+ foreach (var num in filled)
+ {
+ Console.WriteLine(num);
+ }
+
+ // 查询并转换类型 将字符串数组转换为整数数组。
+ string[] stringNumbers = { "1", "2", "3", "4" };
+ var intNumbers = stringNumbers.Select(int.Parse).ToArray();
+ foreach (var num in intNumbers)
+ {
+ Console.WriteLine(num);
+ }
+
+ // 查询并使用OfType过滤 从对象数组中过滤出字符串类型的元素。
+ object[] objects = { "String", 123, "Another String", 456 };
+ var result = objects.OfType().ToList();
+ foreach (var str in result)
+ {
+ Console.WriteLine(str);
+ }
+
+ // 1. 查询并使用Zip合并 合并两个数组,并创建一个包含元素对的新数组。
+ int[] numbers1 = { 1, 2, 3 };
+ int[] numbers2 = { 4, 5, 6 };
+ var zipped = numbers1
+ .Zip(numbers2, (n1, n2) => new { Number1 = n1, Number2 = n2 })
+ .ToArray();
+ Console.WriteLine("Zipped:");
+ foreach (var pair in zipped)
+ {
+ Console.WriteLine($"({pair.Number1}, {pair.Number2})");
+ }
+
+ // 2. 查询并使用Range生成 生成一个包含1到10的整数数组。
+ var range = Enumerable.Range(1, 10).ToArray();
+ Console.WriteLine("\nRange:");
+ Console.WriteLine(string.Join(", ", range));
+
+ // 3. 查询并使用Repeat重复 重复一个元素多次,创建一个新数组。
+ var repeated = Enumerable.Repeat(7, 5).ToArray();
+ Console.WriteLine("\nRepeated:");
+ Console.WriteLine(string.Join(", ", repeated));
+
+ // 4. 查询并使用Take限制数量 从数组中取出前5个元素。
+ int[] numbers = { 1, 2, 3, 4, 5, 6, 18, 23, 64, 7, 18, 2, 3 };
+ var taken = numbers.Take(5).ToArray();
+ Console.WriteLine("\nTaken:");
+ Console.WriteLine(string.Join(", ", taken));
+
+ // 5. 查询并使用Skip跳过元素 跳过数组中的前3个元素,然后取出剩余的元素。
+ var skipped = numbers.Skip(3).ToArray();
+ Console.WriteLine("\nSkipped:");
+ Console.WriteLine(string.Join(", ", skipped));
+ }
+ }
+}
diff --git "a/\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/bin/Debug/net8.0/Blogs.deps.json" "b/\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/bin/Debug/net8.0/Blogs.deps.json"
new file mode 100644
index 0000000..8b5e837
--- /dev/null
+++ "b/\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/bin/Debug/net8.0/Blogs.deps.json"
@@ -0,0 +1,23 @@
+{
+ "runtimeTarget": {
+ "name": ".NETCoreApp,Version=v8.0",
+ "signature": ""
+ },
+ "compilationOptions": {},
+ "targets": {
+ ".NETCoreApp,Version=v8.0": {
+ "Blogs/1.0.0": {
+ "runtime": {
+ "Blogs.dll": {}
+ }
+ }
+ }
+ },
+ "libraries": {
+ "Blogs/1.0.0": {
+ "type": "project",
+ "serviceable": false,
+ "sha512": ""
+ }
+ }
+}
\ No newline at end of file
diff --git "a/\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/bin/Debug/net8.0/Blogs.dll" "b/\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/bin/Debug/net8.0/Blogs.dll"
new file mode 100644
index 0000000000000000000000000000000000000000..697959b22ed8b64a527cecce8ad89bced716e3eb
GIT binary patch
literal 7680
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
literal 0
HcmV?d00001
diff --git "a/\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/bin/Debug/net8.0/Blogs.exe" "b/\346\261\237\346\226\207\346\267\257/MVC-Linq\351\233\206\346\210\220\346\237\245\350\257\242/Blogs/bin/Debug/net8.0/Blogs.exe"
new file mode 100644
index 0000000000000000000000000000000000000000..71da93541f0b034018e36055f4aa1bab5ef3454a
GIT binary patch
literal 138752
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
Txb_yC-Lkp
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