检查字符串 null 或空并替换为另一个字符串

Tec*_*Guy 3 c# asp.net-mvc

在这里,我想,如果 AvailCode 作为 anullempty字符串出现,那么我需要显示它“暂时不可用”。但我的编码没有显示该值。(仅考虑可用代码)。

var _staff = trv.GetBookDetails("4500").Select(b => new
{
    value = b.bookno,
    text =  b.bookname + " " + "/"+" " + b.AvailCode ?? "TemporaryUnavailable",  
});
Run Code Online (Sandbox Code Playgroud)

fub*_*ubo 6

??操作员只处理NULLcase,不处理空 case

代替

b.AvailCode ?? "TemporaryUnavailable"
Run Code Online (Sandbox Code Playgroud)

string.IsNullOrEmpty(b.AvailCode)? "TemporaryUnavailable" : b.AvailCode
Run Code Online (Sandbox Code Playgroud)

所以正确的行是

text = b.bookname + " / " + (string.IsNullOrEmpty(b.AvailCode) ? "TemporaryUnavailable" : b.AvailCode),
Run Code Online (Sandbox Code Playgroud)