我有以下声明:
serverCard.Details = !String.IsNullOrEmpty(card.Details) ? card.Details : serverCard.Details;
我想检查一下,看看card.Details是空还是空......如果没有,写下这个值。是否有任何语法允许我省略其他条件?
答案 0 :(得分:16)
当然,只需使用常规if
:
if(!String.IsNullOrEmpty(card.Details))
serverCard.Details = card.Details
答案 1 :(得分:5)
您始终可以使用旧的if
声明:
if(!String.IsNullOrEmpty(card.Details))
{
serverCard.Details = card.Details;
}
我认为这里不需要三元运算符。
答案 2 :(得分:0)
您可以为String编写扩展方法以检查nullOrEmpty。如果那么常规会更短
扩展方法:
public static bool IsNullOrEmpty(this string str)
{
return string.IsNullOrEmpty(str);
}
public static bool IsNullOrWhiteSpace(this string str)
{
return string.IsNullOrWhiteSpace(str);
}
if:
if(!card.Details.IsNullOrWhiteSpace())
serverCard.Details = card.Details
扩展方法适用于每个字符串。