I'm confused as to why this code won't compile:
var result = $"{fieldName}{isDescending ? " desc" : string.Empty}";
If I split it up, it works fine:
var desc = isDescending ? " desc" : string.Empty;
var result = $"{fieldName}{desc}";
According to the documentation:
The structure of an interpolated string is as follows: {
The problem is that the colon is used to denote formatting, like:
Console.WriteLine($"The current hour is {hours:hh}")
The solution is to wrap the conditional in parenthesis:
var result = $"Descending {(isDescending ? "yes" : "no")}";
Success story sharing
Console.WriteLine($"Cargo Weight: {(ship.WeightAvailable ? $"{ship.Weight:0.00}" : "n/a")}");
Ship
class with abool WeighAvailable
anddouble Weight
public properties/attributes of course).