Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah saya boleh menggunakan kaedah LINQ yang berbeza () untuk mendapatkan objek unik berdasarkan sifat tertentu?

Bagaimanakah saya boleh menggunakan kaedah LINQ yang berbeza () untuk mendapatkan objek unik berdasarkan sifat tertentu?

Patricia Arquette
Patricia Arquetteasal
2025-02-02 09:11:12330semak imbas

How Can I Use LINQ's Distinct() Method to Get Unique Objects Based on Specific Properties?

Gunakan kaedah LINQ yang berbeza () untuk mendapatkan objek unik

Linq (Integrasi Bahasa Siasatan) menyediakan alat yang berkuasa

untuk menapis dan mengambil unsur -unsur unik dari koleksi. Walau bagaimanapun, apabila atribut objek tidak mudah, penggunaan

mungkin rumit. Distinct() Distinct() Gunakan berbeza ()

Untuk menggunakan pada atribut objek, anda perlu mengumpulkan objek berdasarkan atribut ini, dan kemudian pilih wakil unik dari setiap kumpulan. Ini boleh dilaksanakan menggunakan kaedah Linq dan

.

Contohnya: Jarak: Jarak Berdasarkan Atribut ID Distinct() GroupBy Select Pertimbangkan senarai objek orang dengan ID dan Nama Properties:

Untuk mendapatkan senarai objek orang yang unik mengikut atribut ID, anda boleh menggunakan kod berikut:

Kod ini pertama kumpulan orang objek mengikut atribut ID untuk membuat set kumpulan. Kemudian gunakan kaedah untuk memilih objek orang pertama dari setiap kumpulan, dan dengan berkesan memberikan senarai unik objek orang berdasarkan atribut ID.

<code>Person1:Id=1,Name="Test1"
Person2:Id=1,Name="Test1"
Person3:Id=2,Name="Test2"</code>
berbeza

<code class="language-csharp">List<Person> distinctPeople = allPeople
  .GroupBy(p => p.Id)
  .Select(g => g.First())
  .ToList();</code>
anda juga boleh menggunakan

dengan menentukan kekunci komposit pada pelbagai atribut. Sebagai contoh, untuk mendapatkan senarai objek orang yang unik berdasarkan atribut ID dan FavoryeTecolor, anda boleh menggunakan kod berikut: Select

nota: Sila ambil perhatian bahawa beberapa penyedia pertanyaan mungkin tidak dapat menganalisis setiap kumpulan mesti memasukkan sekurang -kurangnya satu elemen. Di samping itu, versi sebelumnya EF Core 6 memerlukan sedikit cara yang berbeza. Untuk butiran, lihat jawapan StackOverflow yang disediakan. (Diandaikan bahawa teks asal merujuk kepada jawapan stackoverflow. Jika tidak, anda boleh memadamkan ayat ini)

Atas ialah kandungan terperinci Bagaimanakah saya boleh menggunakan kaedah LINQ yang berbeza () untuk mendapatkan objek unik berdasarkan sifat tertentu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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