假设我们有两个表,一个是Students
表,包含学生的ID和姓名,另一个是Grades
表,包含学生的ID和成绩。
下面是一个使用LINQ查询来获取学生的姓名和成绩的示例代码:
using System;
using System.Linq;
public class Program
{
public static void Main(string[] args)
{
// 定义学生表
var students = new[]
{
new Student { Id = 1, Name = "张三" },
new Student { Id = 2, Name = "李四" },
new Student { Id = 3, Name = "王五" }
};
// 定义成绩表
var grades = new[]
{
new Grade { StudentId = 1, Score = 90 },
new Grade { StudentId = 2, Score = 85 },
new Grade { StudentId = 3, Score = 95 }
};
// 使用LINQ查询学生表和成绩表,获取学生姓名和成绩
var query = from student in students
join grade in grades on student.Id equals grade.StudentId
select new { student.Name, grade.Score };
// 输出结果
foreach (var result in query)
{
Console.WriteLine("学生姓名:{0},成绩:{1}", result.Name, result.Score);
}
}
}
// 学生类
public class Student
{
public int Id { get; set; }
public string Name { get; set; }
}
// 成绩类
public class Grade
{
public int StudentId { get; set; }
public int Score { get; set; }
}
在这个示例中,我们使用了LINQ的join
操作符来连接学生表和成绩表,根据学生的ID进行匹配。然后使用select
关键字选择学生的姓名和成绩,并将结果存储在匿名类型中。最后,我们遍历查询结果并输出学生的姓名和成绩。