Что-то, что я делаю все больше и больше, проверяет строку на пустое (как в ""
или ноль) и условный оператор.
Текущий пример:
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"
.