在LINQ中,INTERNAL JOIN用于根据指定条件从集合中仅返回匹配的记录或元素。
下面是使用LINQ内部联接根据指定条件从集合中获取元素的语法。
var result = from d in objDept join e in objEmp on d.DepId equals e.DeptId select new { EmployeeName = e.Name, DepartmentName = d.DepName };
从上面的语法中,无涯教程试图根据匹配的“DeptId”列值从“objEmp”,“objDept”集合中获取元素。
链接:https://www.learnfk.comhttps://www.learnfk.com/linq/linq-inner-join.html
来源:LearnFk无涯教程网
下面是使用LINQ内部联接根据指定条件从集合中获取元素的示例。
C#代码
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApp1 { class Programme2 { static void Main(string[] args) { /* 创建一个“Department”类的对象并创建一个添加记录的部门列表*/ ListDept = new List (){ new Department{DepId=1,DepName="Software"}, new Department{DepId=2,DepName="Finance"}, new Department{DepId=3,DepName="Health"} }; /* 创建一个“Employee”类的对象并创建一个 添加记录的员工列表*/ List Emp = new List () { new Employee { EmpId=1,Name = "Akshay Tyagi", DeptId=1 }, new Employee { EmpId=2,Name = "Vaishali Tyagi", DeptId=1 }, new Employee { EmpId=3,Name = "Arpita Rai", DeptId=2 }, new Employee { EmpId=4,Name = "Sateesh Alavala", DeptId =2}, new Employee { EmpId=5,Name = "Madhav Sai"} }; /*Linq 查询申请获取的信息 员工姓名和部门名称 在这里,无涯教程将员工与部门映射并将结果存储在变量“result”中*/ var result = from d in Dept join e in Emp on d.DepId equals e.DeptId select new { EmployeeName = e.Name, DepartmentName = d.DepName }; //foreach 循环遍历 result 变量中的所有数据并存储在 item 变量中 foreach (var item in result) { /* Console.WriteLine(item.EmployeeName + "\t | " + item.DepartmentName) 将打印员工姓名和部门名称*/ Console.WriteLine(item.EmployeeName + "\t | " + item.DepartmentName); } Console.ReadLine(); } } //创建类 'Department' 和 'Employee' 并设置变量名 class Department { public int DepId { get; set; } public string DepName { get; set; } } class Employee { public int EmpId { get; set; } public string Name { get; set; } public int DeptId { get; set; } } }
输出:
从上面的示例中,无涯教程从映射员工与部门的两个集合中获取员工姓名和部门名称。
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)