Saya memiliki objek dari tipe yang IEnumerable<KeyValuePair<T,U>> keyValueList
saya gunakan
var getResult= keyValueList.SingleOrDefault();
if(getResult==/*default */)
{
}
else
{
}
Bagaimana saya bisa mengecek getResult
default, kalau-kalau saya tidak dapat menemukan elemen yang benar?
Saya tidak dapat memeriksa apakah itu benar null
atau tidak, karena KeyValuePair
ini adalah struct.
Jawaban:
Coba ini:
atau ini:
sumber
if (getResult.Equals(default))
juga berfungsidefault
sama dengan nol. Dandefault(KeyValuePair<T,U>)
adalah KeyValuePair aktual yang berisinull, null
. Mengalami ini sendiri.Anda dapat membuat metode ekstensi umum (dan generik), seperti ini:
Pemakaian:
sumber
Coba ini:
sumber
sumber
Saya merekomendasikan cara yang lebih memahami menggunakan metode ekstensi:
Dan kemudian gunakan:
sumber
Dari kode asli Anda, sepertinya yang Anda inginkan adalah memeriksa apakah daftar itu kosong:
sumber
Untuk menghindari tinju
KeyValuePair.Equals(object)
Anda bisa menggunakan aValueTuple
.sumber