จับคู่ลูกค้ากับคำสั่งซื้อ
รวมลำดับที่เกี่ยวข้องกันด้วย LINQ Join
ทำงานอย่างไร
Join จับคู่คีย์ของคอลเลกชันสองชุดที่มีชนิด คล้ายการ join ในฐานข้อมูลเชิงสัมพันธ์มาก
ตัวเลือกคีย์เลือก CustomerId จากแต่ละลำดับ และตัวเลือกผลลัพธ์กำหนดรูปแบบของคู่ที่จับได้
ตัวอย่าง C# ที่รันได้
Program.cs
using System;
using System.Linq;
record Customer(int Id, string Name);
record Order(int CustomerId, decimal Total);
class Program
{
static void Main()
{
var customers = new[] { new Customer(1, "Ada"), new Customer(2, "Lin") };
var orders = new[] { new Order(2, 40m), new Order(1, 25m) };
var rows = customers.Join(orders, c => c.Id, o => o.CustomerId, (c, o) => $"{c.Name}: {o.Total}");
Console.WriteLine(string.Join(" | ", rows));
}
}
Ada: 25 | Lin: 40ฝึกกับดีบักเกอร์
ตั้ง breakpoint ที่การกำหนดค่าหรือเงื่อนไขสำคัญ กด Debug แล้วดูค่าตัวแปรภายในก่อนไปยังบรรทัดถัดไป
ฝึกด้วยโจทย์
ใช้สิ่งที่เรียนในบทนี้แก้ปัญหาจริง ทุกโจทย์รันในเบราว์เซอร์ พร้อมการทดสอบทันทีและรีวิวจาก AI
โจทย์ทั้งหมด