我不明白为什么这段代码无法编译:
var result = $"{fieldName}{isDescending ? " desc" : string.Empty}";
如果我把它分开,效果很好:
var desc = isDescending ? " desc" : string.Empty;
var result = $"{fieldName}{desc}";
我不明白为什么这段代码无法编译:
var result = $"{fieldName}{isDescending ? " desc" : string.Empty}";
如果我把它分开,效果很好:
var desc = isDescending ? " desc" : string.Empty;
var result = $"{fieldName}{desc}";
根据这documentation条:
插值字符串的 struct 如下所示:
{ <interpolationExpression>[,<alignment>][:<formatString>] }
个
问题是冒号用于表示格式,例如:
Console.WriteLine($"The current hour is {hours:hh}")
解决方案是在括号中添加条件:
var result = $"Descending {(isDescending ? "yes" : "no")}";