สิ่งที่ฉันคิดว่าตัวเองทำมากขึ้นคือการตรวจสอบสตริงว่าง ๆ (เหมือนใน ""
หรือเป็นโมฆะ) และโอเปอเรเตอร์ที่มีเงื่อนไข
ตัวอย่างปัจจุบัน:
s.SiteNumber.IsNullOrEmpty() ? "No Number" : s.SiteNumber;
นี่เป็นเพียงวิธีส่วนขยายซึ่งเทียบเท่ากับ:
string.IsNullOrEmpty(s.SiteNumber) ? "No Number" : s.SiteNumber;
เนื่องจากว่างเปล่าและไม่ว่างจึง??
ไม่ทำเคล็ดลับ string.IsNullOrEmpty()
รุ่นของ??
จะเป็นโซลูชั่นที่สมบูรณ์แบบ ฉันคิดว่าจะต้องมีวิธีที่สะอาดกว่าในการทำสิ่งนี้ (ฉันหวังว่า!) แต่ฉันได้สูญเสียที่จะหามัน
ไม่มีใครรู้วิธีที่ดีกว่าในการทำเช่นนี้แม้ว่าจะเป็นเพียงใน. Net 4.0?
let (|?) x y = if String.IsNullOrEmpty(x) then y else x
s.SiteNumber |? "No Number"