Katakanlah saya memiliki kelas Customer
yang memiliki properti FirstName
. Lalu aku punya List<Customer>
.
Dapatkah LINQ digunakan untuk mengetahui apakah daftar tersebut memiliki pelanggan dengan Firstname = 'John'
satu pernyataan .. bagaimana?
LINQ mendefinisikan metode ekstensi yang sempurna untuk menyelesaikan masalah ini:
using System.Linq;
...
bool has = list.Any(cus => cus.FirstName == "John");
pastikan Anda merujuk System.Core.dll, di situlah LINQ tinggal.
Jawaban zvolkov adalah jawaban yang tepat untuk mencari tahu apakah ada pelanggan seperti itu. Jika Anda perlu menggunakan pelanggan setelah itu, Anda dapat melakukan:
Saya tahu ini bukan yang Anda tanyakan, tetapi saya pikir saya akan menjawab pertanyaan lanjutan :) (Tentu saja, ini hanya menemukan pelanggan pertama ... untuk menemukan semuanya, gunakan saja
where
klausa normal .)sumber
bool
hasil, jadi dalam hal ini.Any
atau.FindIndex
digunakan di sini yang cepat ?Satu opsi untuk pertanyaan tindak lanjut (bagaimana menemukan pelanggan yang mungkin memiliki sejumlah nama depan):
atau untuk mengambil pelanggan dari csv dari daftar serupa
sumber
Menggunakan Linq Anda memiliki banyak kemungkinan, berikut ini tanpa menggunakan lambdas:
sumber
sumber
Teknik yang saya gunakan sebelum menemukan
.Any()
:sumber
john akan menjadi nol jika tidak ada pelanggan dengan nama depan "John".
sumber
Kemungkinan lain
sumber
Coba ini, saya harap ini membantu Anda.
sumber