เมธอดนี้คืนค่าองค์ประกอบเฉพาะเจาะจงเพียงตัวเดียวของลำดับ หากองค์ประกอบไม่มีอยู่ในลำดับ จะคืนค่าเริ่มต้น (default value)
เรามีอาร์เรย์สตริง 2 ตัว:
string[] str1 = { "one" };
string[] str2 = { };
อาร์เรย์แรกตรวจสอบว่ามีองค์ประกอบเดียวหรือไม่ ส่วนอาร์เรย์ที่สองว่างเปล่าและตรวจสอบด้วย SingleOrDefault
str2.AsQueryable().SingleOrDefault();
ตัวอย่างต่อไปนี้แสดงการใช้งานเมธอด SingleOrDefault()
ตัวอย่าง
using System;
using System.Linq;
using System.Collections.Generic;
public class Demo
{
public static void Main()
{
string[] str1 = { "one" };
string[] str2 = { };
string res1 = str1.AsQueryable().Single();
Console.WriteLine("String found: " + res1);
string res2 = str2.AsQueryable().SingleOrDefault();
Console.WriteLine(String.IsNullOrEmpty(res2) ? "String not found" : res2);
}
}
ผลลัพธ์
String found: one
String not found