Gunakan LINQ untuk mencari objek dengan nilai atribut terkecil atau maksimum
Dengan mengandaikan anda mempunyai senarai yang mengandungi objek orang, objek ini mempunyai atribut dateofbirth yang boleh kosong. Anda mungkin perlu menentukan tarikh lahir terawal.
Satu kaedah adalah untuk mencari nilai minimum harta DateOfBirth dengan kaedah MIN. Walau bagaimanapun, ini hanya akan mengembalikan nilai tarikh minimum, bukan objek orang sebenar.
Untuk mendapatkan objek yang sepadan, anda boleh menggunakan kaedah agregat:
Kaedah agregat
var firstBorn = People.Aggregate((curMin, x) => (curMin == null || (x.DateOfBirth ?? DateTime.MaxValue) < (curMin.DateOfBirth ?? DateTime.MaxValue)) ? x : curMin);
Dalam contoh ini, nilai penumpuk awal ditetapkan kepada null. Fungsi yang diserahkan kepada kaedah agregat untuk memeriksa sama ada nilai penumpuk semasa adalah null, atau sifat tarikh elemen semasa (dengan DateTime.MaxValue Gantikan nilai null) lebih awal daripada harta DateFbirth penumpuk semasa. Jika benar, fungsi mengembalikan elemen semasa sebagai kumulator baru;
Hasil agregat
adalah objek orang paling awal ketika lahir. Kaedah yang lebih ringkas ini tidak perlu melakukan pertanyaan kedua untuk mendapatkan objek yang sepadan.Atas ialah kandungan terperinci Bagaimana untuk mencari orang dengan tarikh lahir terawal menggunakan Linq?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!