Menggunakan C# LINQ untuk sambungan dalaman DataTable
Inner joins menggabungkan baris daripada dua Jadual Data berdasarkan kunci biasa. Ini berguna untuk tugas seperti menggabungkan maklumat daripada jadual berbeza atau menapis data berdasarkan kriteria tertentu.
Andaikan kita mempunyai dua Jadual Data, T1 dan T2, dengan medan berikut:
Kita perlu mencipta jadual bersama TJ yang mengandungi medan berikut:
Menggunakan LINQ, kita boleh melakukan cantuman dalaman pada lajur CustID:
<code class="language-csharp">var results = from table1 in dt1.AsEnumerable() join table2 in dt2.AsEnumerable() on (int)table1["CustID"] equals (int)table2["CustID"] select new { CustID = (int)table1["CustID"], ColX = (int)table1["ColX"], ColY = (int)table1["ColY"], ColZ = (int)table2["ColZ"] };</code>
Pertanyaan ini menjana urutan objek tanpa nama yang mengandungi lajur bercantum. Kami kemudiannya boleh mengulangi keputusan dan mengeluarkannya ke konsol:
<code class="language-csharp">foreach (var item in results) { Console.WriteLine(String.Format("ID = {0}, ColX = {1}, ColY = {2}, ColZ = {3}", item.CustID, item.ColX, item.ColY, item.ColZ)); }</code>
Kod ini akan menghasilkan output berikut:
<code>ID = 1, ColX = 11, ColY = 21, ColZ = 31 ID = 2, ColX = 12, ColY = 22, ColZ = 32 ID = 3, ColX = 13, ColY = 23, ColZ = 33 ID = 4, ColX = 14, ColY = 24, ColZ = 34 ID = 5, ColX = 15, ColY = 25, ColZ = 35</code>
Atas ialah kandungan terperinci Bagaimana untuk Melakukan Gabungan Dalaman Dua Jadual Data dalam C# menggunakan LINQ?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!