Rumah > pembangunan bahagian belakang > C++ > Bagaimanakah LINQ Boleh Menghimpunkan Senarai Objek ke dalam Senarai Bersarang?

Bagaimanakah LINQ Boleh Menghimpunkan Senarai Objek ke dalam Senarai Bersarang?

Susan Sarandon
Lepaskan: 2025-01-13 11:35:43
asal
665 orang telah melayarinya

How Can LINQ Group a List of Objects into Nested Lists?

Kumpulkan senarai objek ke dalam senarai bersarang menggunakan LINQ

Organisasi data yang cekap adalah penting dalam bidang pengaturcaraan. LINQ menyediakan mekanisme yang berkuasa untuk mengumpulkan objek berdasarkan keadaan tertentu. Artikel ini akan menyelesaikan masalah biasa: mengumpulkan senarai objek ke dalam senarai baharu yang mengandungi senarai bersarang.

Pertimbangkan definisi kelas berikut:

<code>public class User
{
    public int UserID { get; set; }
    public string UserName { get; set; }
    public int GroupID { get; set; }
}</code>
Salin selepas log masuk

Untuk mengumpulkan pengguna berdasarkan GroupID mereka, kami boleh menggunakan kod berikut:

<code>var groupedCustomerList = userList
    .GroupBy(u => u.GroupID)
    .Select(grp => grp.ToList())
    .ToList();</code>
Salin selepas log masuk

Tafsiran kod:

  1. GroupBy: Klausa ini membahagikan senarai pengguna asal kepada berbilang kumpulan berdasarkan atribut GroupID.
  2. Pilih: Ia kemudian menukar setiap hasil (iaitu set pengguna dengan ID Kumpulan yang sama) kepada senarai pengguna.
  3. ToList: Akhirnya, hasilnya ditukar kepada senarai baharu senarai bersarang, setiap senarai bersarang mengandungi pengguna daripada kumpulan yang sama.

Ungkapan LINQ ini mengumpulkan senarai pengguna asal mengikut GroupID dengan bijak, mempersembahkan mereka secara teratur. Setiap senarai bersarang dalam hasil akhir mewakili kumpulan pengguna yang berkongsi ID Kumpulan yang sama.

Atas ialah kandungan terperinci Bagaimanakah LINQ Boleh Menghimpunkan Senarai Objek ke dalam Senarai Bersarang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan