Rumah > pembangunan bahagian belakang > C++ > Bagaimanakah Saya Boleh Memesan Data Secara Dinamik dalam LINQ Menggunakan Parameter?

Bagaimanakah Saya Boleh Memesan Data Secara Dinamik dalam LINQ Menggunakan Parameter?

Linda Hamilton
Lepaskan: 2025-01-10 11:54:43
asal
435 orang telah melayarinya

How Can I Dynamically Order Data in LINQ Using a Parameter?

Pengisihan dinamik LINQ: memahami parameter dinamik kaedah OrderBy

Kaedah OrderBy dalam pertanyaan LINQ membolehkan pengisihan data yang cekap. Tetapi bagaimana jika anda ingin menentukan parameter pengisihan secara dinamik berdasarkan parameter? Artikel ini akan membimbing anda melalui ini.

Pelaksanaan semasa

Andaikan anda mempunyai senarai objek Pelajar dan ingin mengisihnya mengikut sifat Alamatnya:

<code class="language-csharp">List<Student> existingStudents = new List<Student> { new Student {...}, new Student {...} };

List<Student> orderbyAddress = existingStudents.OrderBy(c => c.Address).ToList();</code>
Salin selepas log masuk

Walau bagaimanapun, ini mengeraskan pesanan alamat.

Isih dinamik

Untuk menentukan parameter pengisihan secara dinamik, anda boleh memanfaatkan pantulan untuk membina pepohon ungkapan:

<code class="language-csharp">public static IQueryable<T> OrderBy<T>(this IQueryable<T> source, string orderByProperty, bool desc)
{
    // ... (此处应提供答案中的代码片段)
}</code>
Salin selepas log masuk

Cara menggunakan

Kini anda boleh menggunakan kaedah sambungan OrderBy dengan parameter dinamik:

<code class="language-csharp">string param = "City";
List<Student> orderbyCity = existingStudents.OrderBy("City", true).ToList(); // 降序排序</code>
Salin selepas log masuk

Pendekatan ini memberikan fleksibiliti untuk menentukan parameter pengisihan semasa masa jalan, membenarkan pengisihan yang boleh disesuaikan dan dinamik dalam pertanyaan LINQ.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memesan Data Secara Dinamik dalam LINQ Menggunakan Parameter?. 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